Installieren von Django und Einrichten einer Entwicklungsumgebung unter Ubuntu 16.04

Einführung

Django ist ein kostenloses und in Python geschriebenes Open-Source-Webframework, das dem Architekturmuster der * Model Template View (MTV) * -Software folgt. Das MTV-Muster ist Djangos Übernahme des Musters model–view–controller (MVC). Laut der Django Software Foundation ist das Modell die einzige definitive Quelle Ihrer Daten. Die Ansicht beschreibt die Daten, die dem Benutzer über einen Python-Rückruf https://www.digitalocean.com/community/tutorials/how-to angezeigt werden -define-functions-in-python-3 [function] zu einer bestimmten URL, und das template ist, wie Django HTML dynamisch generiert.

Die Grundprinzipien von Django sind Skalierbarkeit, Wiederverwendbarkeit und schnelle Entwicklung. Es ist auch bekannt für seine Konsistenz auf Framework-Ebene und die lose Kopplung, die es ermöglicht, dass einzelne Komponenten voneinander unabhängig sind. Wiederholen Sie sich nicht (DRY programming) ist ein wesentlicher Bestandteil der Django-Prinzipien.

In diesem Tutorial richten wir eine Django-Entwicklungsumgebung ein. Wir installieren Python 3, Pip 3, Django und "+ virtualenv +", um Ihnen die Tools zur Verfügung zu stellen, die Sie für die Entwicklung von Webanwendungen mit Django benötigen.

Voraussetzungen

Ein Nicht-Root-Benutzerkonto mit "+ sudo +" - Berechtigungen, das auf einem Debian- oder Ubuntu-Linux-Server eingerichtet wurde. Sie können diese Voraussetzungen erreichen, indem Sie den initial server setup for Debian 8 oder den Schritten 1-4 in folgen und diese ausführen Das Tutorial https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04 umfasst die anfängliche Serverkonfiguration für Ubuntu 16.04].

Schritt 1 - Installieren Sie Python und pip

Um Python zu installieren, müssen wir zuerst das lokale APT-Repository aktualisieren. In Ihrem Terminalfenster geben wir den folgenden Befehl ein. Beachten Sie, dass das "+ -y +" - Flag auf Eingabeaufforderungen während des Aktualisierungsvorgangs mit "Ja" antwortet. Entfernen Sie die Markierung, wenn das Upgrade bei jeder Aufforderung gestoppt werden soll.

sudo apt-get update && sudo apt-get -y upgrade

Wenn Sie aufgefordert werden, "+ grub-pc" zu konfigurieren, können Sie "+ ENTER" drücken, um die Standardeinstellung zu übernehmen, oder nach Wunsch konfigurieren.

Es wird von der Django Software Foundation empfohlen, Python 3 zu verwenden. Sobald also alles aktualisiert ist, können wir Python 3 mit dem folgenden Befehl installieren:

sudo apt-get install python3

Führen Sie eine Versionsprüfung mit dem Befehl * python3 * durch, um die erfolgreiche Installation von Python 3 zu überprüfen:

python3 -V

Die resultierende Ausgabe sieht ungefähr so ​​aus:

Outputpython

Nachdem wir Python 3 installiert haben, benötigen wir auch * pip *, um Pakete aus PyPi, dem Paket-Repository von Python, zu installieren.

sudo apt-get install -y python3-pip

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob pip erfolgreich installiert wurde:

pip3 -V

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Outputpip  from /usr/lib/python3/dist-packages (python )

Nach der Installation von pip können wir andere für eine Python-Umgebung erforderliche Pakete schnell installieren.

Schritt 2 - Installieren Sie virtualenv

Um virtualenv zu installieren, verwenden wir den Befehl * pip3 * (siehe unten):

pip3 install virtualenv

Führen Sie nach der Installation eine Versionsprüfung durch, um sicherzustellen, dass die Installation erfolgreich abgeschlossen wurde:

virtualenv --version

Wir sollten die folgende Ausgabe oder etwas ähnliches sehen:

Output

Sie haben * virtualenv * erfolgreich installiert.

Zu diesem Zeitpunkt können wir unsere Django-Webanwendung und die damit verbundenen Software-Abhängigkeiten von anderen Python-Paketen oder -Projekten auf unserem System isolieren.

Schritt 3 - Installieren Sie Django

Es gibt drei Möglichkeiten, Django zu installieren. In diesem Lernprogramm wird die Pip-Installationsmethode verwendet, es werden jedoch alle verfügbaren Optionen für Ihre Referenz behandelt.

  • * Option 1: Installieren Sie Django in einem + virtualenv +. *
    Dies ist ideal, wenn Sie Ihre Django-Version von der globalen Umgebung Ihres Servers isolieren möchten.

  • * Option 2: Installieren Sie Django von der Quelle. *
    Wenn Sie die neueste Software oder etwas Neueres als das, was Ihr Ubuntu APT-Repository bietet, möchten, können Sie direkt von der Quelle installieren. Beachten Sie, dass die Auswahl dieser Installationsmethode ständige Aufmerksamkeit und Wartung erfordert, wenn Sie möchten, dass Ihre Softwareversion auf dem neuesten Stand ist.

  • * Option 3: Installieren Sie Django Global mit pip. *
    Die Option, die wir wählen, ist Pip 3, da wir Django global installieren werden.

Wir werden Django mit pip in einer virtuellen Umgebung installieren. Weitere Anleitungen und Informationen zum Einrichten und Verwenden von Programmierumgebungen finden Sie in diesem Lernprogramm unter https://www.digitalocean.com/community/tutorials/how-to-install-python-3-and-set-up-a -Programmierumgebung-auf-einem-Ubuntu-16-04-Server [Einrichten einer virtuellen Umgebung].

Im Home-Verzeichnis des Servers müssen wir das Verzeichnis erstellen, in dem sich unsere Django-Anwendung befindet. Führen Sie den folgenden Befehl aus, um ein Verzeichnis mit dem Namen oder einen anderen Namen Ihrer Wahl zu erstellen. Navigieren Sie dann zu dem Verzeichnis.

mkdir
cd

Erstellen Sie im Verzeichnis Ihre virtuelle Umgebung. Nennen wir es

virtualenv

Aktivieren Sie nun die virtuelle Umgebung mit dem folgenden Befehl:

. env/bin/activate

Sie werden wissen, dass es aktiviert ist, sobald das Präfix in geändert wird. Je nachdem, in welchem ​​Verzeichnis Sie sich befinden, sieht es folgendermaßen aus:

Installieren Sie in der Umgebung das Django-Paket mit pip. Durch die Installation von Django können wir Django-Anwendungen erstellen und ausführen. Um mehr über Django zu erfahren, lesen Sie unsere Tutorial-Reihe unter Django Development.

pip install django

Überprüfen Sie nach der Installation Ihre Django-Installation, indem Sie eine Versionsprüfung durchführen:

django-admin --version

Dies oder etwas Ähnliches ist die resultierende Ausgabe:

Output

Wenn Django auf Ihrem Server installiert ist, können wir ein Testprojekt erstellen, um sicherzustellen, dass alles ordnungsgemäß funktioniert.

Schritt 4 - Erstellen eines Django-Testprojekts

Um die Django-Installation zu testen, erstellen wir eine Skeleton-Webanwendung.

Firewall-Regeln festlegen

Gegebenenfalls müssen wir zuerst den Port öffnen, den wir in der Firewall unseres Servers verwenden. Wenn Sie UFW verwenden (siehe https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04#step-seven-%E2%80%94-set) -up-a-basic-firewall [Anleitung zur Ersteinrichtung des Servers]) können Sie den Port mit dem folgenden Befehl öffnen:

sudo ufw allow 8000

Wenn Sie DigitalOcean Firewalls verwenden, können Sie aus den eingehenden Regeln "+ HTTP +" auswählen. Weitere Informationen zu DigitalOcean Firewalls und zum Erstellen von Regeln für diese finden Sie unter https://www.digitalocean.com/community/tutorials/an-einführung-zu-digitalocean-cloud-firewalls#creating-new-inbound-rules-from -presets [Abschnitt für eingehende Regeln des Einführungstutorials].

Projekt starten

Wir können jetzt eine Anwendung mit + django-admin +, einem Befehlszeilenprogramm für Administrationsaufgaben in Python, generieren. Dann können wir den Befehl + startproject + verwenden, um die Projektverzeichnisstruktur für unsere Testwebsite zu erstellen.

Führen Sie im Verzeichnis "+ django-apps +" den folgenden Befehl aus:

django-admin startproject testsite

Jetzt können wir sehen, welche Projektdateien gerade erstellt wurden. Navigieren Sie zum Verzeichnis + testsite + und listen Sie den Inhalt dieses Verzeichnisses auf, um zu sehen, welche Dateien erstellt wurden:

cd testsite
ls
Outputmanage.py  testsite

Sie werden feststellen, dass die Ausgabe, die dieses Verzeichnis anzeigt, eine Datei mit dem Namen "+ manage.py " und einen Ordner mit dem Namen " testsite " enthält. Die Datei " manage.py " ähnelt " django-admin " und legt das Projektpaket auf " sys.path ". Dadurch wird auch die Umgebungsvariable " DJANGO_SETTINGS_MODULE " so festgelegt, dass sie auf die " settings.py +" - Datei Ihres Projekts verweist.

Sie können das Skript "+ manage.py " in Ihrem Terminal anzeigen, indem Sie den Befehl " less +" wie folgt ausführen:

less manage.py

Wenn Sie mit dem Lesen des Skripts fertig sind, drücken Sie "+ q +", um die Anzeige der Datei zu beenden.

Navigieren Sie nun zum Verzeichnis "+ testsite +", um die anderen erstellten Dateien anzuzeigen:

cd testsite/

Führen Sie dann den folgenden Befehl aus, um den Inhalt des Verzeichnisses aufzulisten:

ls

Sie sehen vier Dateien:

Output__init__.py  settings.py  urls.py  wsgi.py

Sehen wir uns die folgenden Dateien an:

  • + init . py + fungiert als Einstiegspunkt für Ihr Python-Projekt.

  • + settings.py + beschreibt die Konfiguration Ihrer Django-Installation und teilt Django mit, welche Einstellungen verfügbar sind.

  • + urls.py + enthält eine + url patterns-Liste, die URLs zu ihren` + views` weiterleitet und abbildet.

  • + wsgi.py + enthält die Konfiguration für das Web Server Gateway Interface. Die Webserver-Gateway-Schnittstelle (WSGI) ist der Python-Plattformstandard für die Bereitstellung von Webservern und -anwendungen.

Starten und Anzeigen Ihrer Website

Jetzt können wir den Server starten und die Website auf einem bestimmten Host und Port anzeigen, indem wir den Befehl + runserver + ausführen.

Wir müssen Ihre Server-IP-Adresse zur Liste "+ ALLOWED_HOSTS " in der Datei " settings.py " hinzufügen, die sich in " ~ / test_django_app / testsite / testsite / +" befindet.

Wie in den Django docs angegeben, enthält die Variable "+ ALLOWED_HOSTS +" eine Liste von Zeichenfolgen, die die Host- / Domainnamen darstellen, die diese Django-Site verwenden kann Dienen. Dies ist eine Sicherheitsmaßnahme, um HTTP-Host-Header-Angriffe zu verhindern, die auch bei vielen scheinbar sicheren Webserverkonfigurationen möglich sind. “

Sie können Ihren bevorzugten Texteditor verwenden, um Ihre IP-Adresse hinzuzufügen. Wenn Sie beispielsweise "+ nano +" verwenden, führen Sie einfach den folgenden Befehl aus:

nano ~/django-apps/testsite/testsite/settings.py

Sobald Sie den Befehl ausgeführt haben, möchten Sie zum Abschnitt "Zugelassene Hosts" des Dokuments navigieren und die IP-Adresse Ihres Servers in eckigen Klammern in einfachen oder doppelten Anführungszeichen einfügen.

settings.py

"""
Django settings for testsite project.

Generated by 'django-admin startproject' using Django 2.0.
...
"""
...
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

# Edit the line below with your server IP address
ALLOWED_HOSTS = ['']
...

Sie können die Änderung speichern und nano beenden, indem Sie die Tasten + CTRL + + + x + gedrückt halten und dann die Taste + y + drücken.

Navigieren Sie nach Abschluss dieses Vorgangs zu dem Verzeichnis zurück, in dem sich "+ manage.py +" befindet:

cd ~/django-apps/testsite/

Führen Sie nun den folgenden Befehl aus und ersetzen Sie den Text durch die IP Ihres Servers:

python manage.py runserver :8000

Schließlich können Sie zum folgenden Link navigieren, um zu sehen, wie Ihre Website aussieht, und den hervorgehobenen Text durch die tatsächliche IP-Adresse Ihres Servers ersetzen:

http://:8000/

Sobald die Seite geladen ist, wird Folgendes angezeigt:

Dies bestätigt, dass Django ordnungsgemäß installiert wurde und unser Testprojekt ordnungsgemäß funktioniert.

Wenn Sie mit dem Testen Ihrer App fertig sind, können Sie die Tastenkombination "+ STRG" + "+ C " drücken, um den Befehl " runserver" zu beenden. Dadurch kehren Sie zu Ihrer Programmierumgebung zurück.

Wenn Sie bereit sind, Ihre Python-Umgebung zu verlassen, können Sie den Befehl + disable + ausführen:

deactivate

Wenn Sie Ihre Programmierumgebung deaktivieren, kehren Sie zur Eingabeaufforderung des Terminals zurück.

Fazit

In diesem Tutorial haben Sie erfolgreich auf die neueste Version von Python 3 aktualisiert, die Ihnen über das Ubuntu APT-Repository zur Verfügung steht. Sie haben auch pip3, + virtualenv und` + django` installiert.

Sie haben jetzt die Tools, die Sie zum Erstellen von Django-Webanwendungen benötigen.