In diesem Tutorial zeigen wir Ihnen, wie Sie Wagtail auf einem Debian 9 VPS installieren.
Wagtail ist ein kostenloses Open-Source-Webanwendungs-Framework auf Python-Basis. Darüber hinaus ist Wagtail auch ein beliebtes CMS, das das Django-Framework verwendet. Es verfügt über eine Reihe nützlicher Komponenten, die Entwicklern dabei helfen, ihre Anwendungen schnell und einfach zu erstellen.
Wagtail wird von erfahrenen Entwicklern erstellt und gewartet und wird von einigen der weltweit größten Unternehmen und Regierungen verwendet. Die Installation von Wagtail unter Debian 9 ist eine einfache Aufgabe, wenn Sie die folgenden Schritte sorgfältig befolgen. Für dieses Tutorial installieren wir Wagtail mit pip in einer virtuellen Umgebung. Beginnen wir mit der Installation.
Voraussetzungen
- Ein Debian 9 VPS
- SSH-Zugriff mit Root-Berechtigungen (oder Zugriff auf ein Administratorkonto mit sudo-Berechtigungen)
Schritt 1:Melden Sie sich über SSH an und aktualisieren Sie das System
Melden Sie sich bei Ihrem Debian 9 VPS an.
ssh root@IP_Address -p Port_number
Mit dem folgenden Befehl können Sie überprüfen, ob Sie die richtige Debian-Version auf Ihrem Server installiert haben:
# lsb_release -a
Sie sollten diese Ausgabe erhalten:
Distributor ID: Debian Description: Debian GNU/Linux 9.9 (Stretch) Release: 9.9 Codename: stretch
Führen Sie dann den folgenden Befehl aus, um sicherzustellen, dass alle installierten Pakete auf dem Server auf ihre neuesten verfügbaren Versionen aktualisiert werden:
# apt update && apt upgrade
Wenn das erledigt ist, können wir mit der Installation der benötigten Pakete beginnen.
Schritt 2:Python und Pip installieren
Um mit der Wagtail-Installation fortzufahren, müssen wir zuerst Python 3 installieren. Dies kann durch Eingabe dieses nächsten Befehls erfolgen. Dadurch wird auch der Paketmanager „pip“ für Python sowie das Paket für die virtuelle Umgebung für Python installiert:
# apt install python3 python3-pip python3-venv
Jetzt müssen wir eine virtuelle Umgebung erstellen.
Schritt 3:Erstellen Sie eine virtuelle Umgebung
Wir werden nun eine virtuelle Umgebung über einen Systembenutzer installieren. Wenn Sie keinen anderen Systembenutzer als das Root-Konto haben, erstellen Sie bitte zuerst ein Konto und fügen Sie es dann der Liste „sudoers“ hinzu. Bitte werfen Sie einen Blick auf dieses Tutorial, um zu sehen, wie dies durchgeführt werden kann. Führen Sie diesen nächsten Befehl aus, um „virtualenv“ mit pip3 zu installieren.
# pip3 install virtualenv
Sobald die virtuelle Umgebung installiert ist, können Sie mit der Erstellung der virtuellen Wagtail-Umgebung fortfahren. Wir nennen es „wagtailvenv“, aber Sie können es nennen, wie Sie möchten.
# su - rh $ virtualenv wagtailvenv
Der Befehl erstellt eine virtuelle Umgebung in /home/rh/wagtailvenv
.
Schritt 4:Bachstelze in virtualenv installieren
Während wir noch als „rh“-Benutzer angemeldet sind, installieren wir jetzt Wagtail in der virtuellen Umgebung, die wir zuvor erstellt haben:
$ source ~/wagtailvenv/bin/activate
Wie Sie auf dem Bildschirm sehen können, hat sich die Eingabeaufforderung Ihres SSH-Terminals in die Eingabeaufforderung der virtuellen Umgebung geändert:
Sie befinden sich jetzt in der virtuellen Umgebung – fahren wir mit der Wagtail-Installation fort.
(wagtailvenv) rh@rose:~$ pip install wagtail
Achten Sie auf den Befehl – auch wenn wir Python 3 in der virtuellen Python-Umgebung verwenden, verwenden Sie bitte den Befehl „pip“ anstelle von „pip3“. Dies liegt daran, dass das Tool für die virtuelle Umgebung unabhängig von der verwendeten Python-Version immer pip heißt.
Schritt 5:Erstellen Sie ein Bachstelzenprojekt
Bachstelze wurde nun unter dem Benutzer „rh“ installiert. Lassen Sie uns nun ein Beispielprojekt erstellen:
(wagtailvenv) rh@rose:~$:~$ cd ~ (wagtailvenv) rh@rose:~$:~$ wagtail start newproject
Der Befehl erstellt ein Projekt mit dem Namen „newproject“, und dies erstellt auch ein „newproject“-Verzeichnis in /home/rh/
.
Führen Sie als Nächstes die folgenden Befehle aus, um das neue Projekt zu starten.
(wagtailvenv) rh@rose:~$:~$ cd newproject (wagtailvenv) rh@rose:~$:~$ python manage.py migrate (wagtailvenv) rh@rose:~$:~$ python manage.py createsuperuser (wagtailvenv) rh@rose:~$:~$ python manage.py runserver 0.0.0.0:8000
Beim Erstellen des Superusers werden Sie nach einem Passwort und einer E-Mail-Adresse gefragt – bitte geben Sie die Anmeldeinformationen ein.
Öffnen Sie nun Ihren bevorzugten Webbrowser und navigieren Sie zu Ihrer IP-Adresse:8000. In diesem Beispiel haben wir Wagtail auf 192.168.1.231 installiert, also müssen wir zu http://192.168.1.231:8000
gehen um das Webinterface zu sehen. So sieht es aus:
Sie erreichen die Bachstelzen-Administrationsseite unter http://192.168.1.231:8000/admin
– Verwenden Sie die Anmeldeinformationen, die Sie beim Erstellen des Wagtail-Superusers im vorherigen Schritt ausgewählt haben.
Schritt 6:Installieren Sie Gunicorn
Um die Wagtail-Anwendung besser zu verwalten, müssen wir Gunicorn installieren. Gunicorn ist ein Python „Web Server Gateway Interface“ (WGSI) HTTP-Server. Es ist ein Pre-Fork-Worker-Modell, das von Rubys Unicorn-Projekt portiert wurde. Der Gunicorn-Server ist weitgehend kompatibel mit einer Reihe von Web-Frameworks, kann einfach implementiert werden, ist ressourcenschonend und ziemlich schnell. Installieren Sie es, indem Sie diese Befehle ausführen:
(wagtailvenv) rh@rose:~$ pip install gunicorn (wagtailvenv) rh@rose:~$ cd ~/newproject (wagtailvenv) rh@rose:~$ python manage.py collectstatic (wagtailvenv) rh@rose:~$ deactivate (wagtailvenv) rh@rose:~$ exit
Was wir jetzt tun werden, ist, Gunicorn zu einem Systemdienst zu machen, damit wir es mit „systemctl“ nach Belieben starten und stoppen können. Erstellen Sie nun diese Datei mit Ihrem bevorzugten Texteditor und stellen Sie sicher, dass der Inhalt Ihrer Konfigurationsdatei mit dem Inhalt dieses Beispiels übereinstimmt. Vergessen Sie natürlich nicht, den Benutzernamen in den Namen Ihres Administratorkontos zu ändern:
# nano /etc/systemd/system/gunicorn.service
[Unit] Description=gunicorn daemon After=network.target [Service] User=rh Group=www-data WorkingDirectory=/home/rh/newproject ExecStart=/home/rh/wagtailvenv/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/rh/newproject.sock newproject.wsgi:application [Install] WantedBy=multi-user.target
Nachdem die Änderungen vorgenommen wurden, speichern und beenden Sie die Datei und laden Sie dann alle Daemons neu, damit die neue Konfigurationsdatei bestätigt wird:
# systemctl daemon-reload
Jetzt können wir die Wagtail-Anwendung mit dem systemctl-Befehl starten/stoppen/neu starten:
# systemctl start gunicorn
Wenn Sie es beim Booten ausführen möchten, müssen wir es aktivieren:
# systemctl enable gunicorn
Schritt 7:Nginx installieren
Gunicorn wurde erfolgreich konfiguriert. Wenn Sie jedoch mit Ihrem Domainnamen auf die Anwendung zugreifen möchten und die Portnummer nicht benötigen, müssen wir einen Webserver installieren und konfigurieren. Für dieses Tutorial installieren und konfigurieren wir Nginx für die Proxy-Weiterleitung an gunicorn.
# apt install nginx
Lassen Sie uns eine Nginx-Serverblockdatei erstellen. Stellen Sie sicher, dass Sie yourdomain.com in Ihren tatsächlichen Domainnamen ändern. Erstellen Sie diese Datei mit Ihrem bevorzugten Texteditor und fügen Sie diesen Inhalt hinzu:
# nano /etc/nginx/sites-enabled/yourdomain.com.conf
server { listen 80; server_name yourdomain.com; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /home/rh/newproject; } location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://unix:/home/rh/newproject.sock; } }
Speichern und beenden Sie, sobald Sie fertig sind. Überprüfen Sie als Nächstes mit dem ersten Befehl, ob Fehler vorliegen. Wenn keine vorhanden sind, können Sie Nginx starten. Wir empfehlen außerdem, Nginx so zu aktivieren, dass es auch beim Booten startet:
# nginx -t # systemctl start nginx # systemctl enable nginx
Um Nginx Berechtigungen für den Zugriff auf Ihre Wagtail-Anwendung zu erteilen, müssen wir den Nginx-Benutzer der Benutzergruppe hinzufügen, die Wagtail ausführt:
# usermod -aG www-data rh
Dann müssen wir auch die Verzeichnisberechtigungen des Home-Verzeichnisses des Wagtail-Benutzers ändern:
# chmod 710 /home/rh
Starten Sie dann Nginx neu, um die Änderungen zu bestätigen:
# systemctl restart nginx
Das war's, Sie sollten auf Ihre Wagtail-Anwendung unter http://yourdomain.com
zugreifen können jetzt.
Natürlich müssen Sie Wagtail nicht auf Debian 9 installieren, wenn Sie einen unserer verwalteten Debian-Hosting-Dienste verwenden. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, Wagtail für Sie auf Ihrem Debian-VPS zu installieren. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.
PS. Wenn Ihnen dieser Beitrag zur Installation von Wagtail auf Debian 9 gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen unten oder hinterlassen Sie einfach eine Antwort in den Kommentarbereichen. Danke.