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:
- Navigieren Sie zu Ihrem Anwendungsverzeichnis (oder klonen Sie ein neues Projekt):
cd~/django_app - (Optional) Standard-App ersetzen:
gitclone<your_repo_url> . - Aktivieren Sie die virtuelle Umgebung:
sourcevenv/bin/activate - Installieren Sie die erforderlichen Pakete:
pip install -r requirements.txt - Anpassen
settings.py: festlegenALLOWED_HOSTSzu Ihrer Domain/IP und stellen Sie sicher, dassSTATIC_ROOTexistiert. - Datenbank migrieren:
python manage.py migrate - Statik sammeln in
STATIC_ROOT:python manage.py collectstatic --noinput - Gunicorn neu starten, um Änderungen zu übernehmen:
sudo systemctl restart gunicorn - 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:
- Bearbeiten Sie die Nginx-Site-Konfiguration:
sudo nano /etc/nginx/sites-available/gunicorn_django - Testkonfiguration:
sudo nginx -t - 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