Django

Ein Python-Webframework, das eine schnelle Entwicklung und ein klares, pragmatisches Design fördert.

1. SSH zu Ihrem Server

ssh root@<server-ip>

2. Anmeldedaten finden

  • Standardbenutzer: django
  • Passwort gespeichert in: /root/.cloudzy-creds

(Optional) Ändern Sie das Standardpasswort: passwd django

3. Wechseln Sie zum App-Benutzer.

su - django

4. PostgreSQL (optional)

Wenn PostgreSQL installiert wurde, richten Sie die Datenbank und den Benutzer ein (Beispiel):

sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q

Dann aktualisieren settings.py DATABASES mit Gastgeber localhost, Datenbankname, Benutzer und Passwort. Ausführen python manage.py migrate.

5. Bereitstellen Ihrer App

Eine Beispiel-Flask-App läuft bereits und ist unter folgender Adresse verfügbar: http://<server-ip

So stellen Sie Ihre eigene App bereit:

  1. Navigieren Sie zu Ihrem Anwendungsverzeichnis (oder klonen Sie ein neues Projekt): cd ~/django_app
  2. (Optional) Standard-App ersetzen: git clone <your_repo_url> .
  3. Aktivieren Sie die virtuelle Umgebung: source venv/bin/activate
  4. Installieren Sie die erforderlichen Pakete: pip install -r requirements.txt
  5. Anpassen settings.py: festlegen ALLOWED_HOSTS zu Ihrer Domain/IP und stellen Sie sicher, dass STATIC_ROOT existiert.
  6. Datenbank migrieren: python manage.py migrate
  7. Statik sammeln in STATIC_ROOT: python manage.py collectstatic --noinput
  8. Gunicorn neu starten, um Änderungen zu übernehmen: sudo systemctl restart gunicorn
  9. Nginx neu starten: sudo systemctl restart nginx

6. Auf Ihre App zugreifen

Your Django app is available at: http://<server-ip

Nginx leitet Anfragen über einen Unix-Socket als Reverse-Proxy an Gunicorn weiter.

7. Port oder Domain ändern?

So passen Sie die Domain und den Port an oder fügen SSL hinzu:

  1. Bearbeiten Sie die Nginx-Site-Konfiguration: sudo nano /etc/nginx/sites-available/gunicorn_django
  2. Testkonfiguration: sudo nginx -t
  3. Nginx neu laden: sudo systemctl restart nginx

8. HTTPS aktivieren (optional)

Verwenden Sie Certbot, um HTTPS zu aktivieren.

Installieren Sie certbot:

sudo apt install certbot python3-certbot-nginx -y

Zertifikate abrufen und Nginx automatisch aktualisieren:

sudo certbot --nginx -d example.com

Test:

nginx -t && sudo systemctl reload nginx

Anwendungsdetails