1. Mit dem Server verbinden
Mit SSH zum Server verbinden:
ssh root@<server-ip>
2. Zugangsdaten abrufen
Ein dedizierter Benutzer namens fastapi wurde erstellt, um Ihre Anwendung zu verwalten.
Die Anmeldedaten finden Sie in dieser Datei: /root/.fastapi-creds
Zum Anzeigen führen Sie folgenden Befehl aus:
cat /root/.fastapi-creds
Um das Passwort zu ändern, verwenden Sie:
passwd fastapi
3. Zum App-Benutzer wechseln
Wechseln Sie zum Benutzerkonto fastapi, um Ihre App zu verwalten:
su - flask
Dieses Konto enthält Ihr FastAPI-Projekt und die zugehörige Umgebung.
4. Project Structure
Standardmäßige Verzeichnisstruktur:
/home/fastapi/fastapi_app/
├── main.py → Your main FastAPI application file
├── venv/ → Virtual environment
└── __pycache__/ → Compiled Python files (auto-generated)
5. Anwendung verwalten
Wechseln Sie in das Anwendungsverzeichnis:
cd ~/fastapi_app
Virtuelle Umgebung aktivieren:
source venv/bin/activate
Öffnen Sie die Haupt-App-Datei zum Bearbeiten:
nano main.py
Starten Sie den FastAPI-Dienst neu, um Änderungen zu übernehmen:
sudo systemctl restart uvicorn-fastapi
6. Viewing Logs
Die Logs für Uvicorn und Nginx können Sie wie folgt einsehen:
- Uvicorn logs:
/var/log/uvicorn/ - Nginx-Fehlerprotokoll:
/var/log/nginx/error.log - Nginx-Zugriffsprotokoll:
/var/log/nginx/access.log
To view them:
sudo tail -f /var/log/uvicorn/*
7. Zugriff auf Ihr API
Sobald der Dienst läuft, ist Ihre FastAPI-App im Browser erreichbar unter: http://<server-ip>
Nginx leitet HTTP-Anfragen automatisch an den Uvicorn-Socket weiter, auf dem Ihre FastAPI-App läuft.
8. Domain oder Port ändern
So aktualisieren Sie den Servernamen, Port oder die Domain:
- Nginx-Site-Konfiguration bearbeiten:
sudo nano /etc/nginx/sites-available/uvicorn-fastapi - Test configuration:
sudo nginx -t - Reload Nginx:
sudo systemctl restart nginx
9. Uvicorn Service
Die FastAPI-App läuft über einen systemd-Dienst namens uvicorn-fastapi.
It uses /home/fastapi/fastapi_app/main:app als Einstiegspunkt der Anwendung und wird bei einem Fehler automatisch neu gestartet.
So verwalten Sie den Dienst:
systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi
So bearbeiten Sie den Dienst:
sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi
10. HTTPS aktivieren (optional)
HTTPS mit Certbot aktivieren.