FastAPI

Ein modernes, leistungsstarkes Python-Webframework zum Erstellen von APIs mit Typ-Hinweisen.

1. Verbinden Sie sich mit Ihrem Server.

Verwenden Sie SSH, um eine Verbindung zu Ihrem Server herzustellen:

ssh root@<server-ip>

2. Zugangsdaten

Ein dedizierter Benutzer namens fastapi wurde erstellt, um Ihre Anwendung zu verwalten.

Die Anmeldedaten finden Sie in dieser Datei: /root/.fastapi-creds

Um sie anzuzeigen, führen Sie Folgendes aus:

cat /root/.fastapi-creds

Wenn Sie das Passwort ändern möchten, verwenden Sie:

passwd fastapi

3. Wechseln Sie zum App-Benutzer.

Wechseln Sie zum Fastapi-Benutzerkonto, um Ihre App zu verwalten:

su - flask

Dieses Konto enthält Ihr FastAPI-Projekt und Ihre Umgebung.

4. Projektstruktur

Hier ist die Standardverzeichnisstruktur:

/home/fastapi/fastapi_app/
├── main.py          → Your main FastAPI application file
├── venv/            → Virtual environment
└── __pycache__/     → Compiled Python files (auto-generated)

5. Verwaltung Ihrer Bewerbung

Navigieren Sie zum Anwendungsverzeichnis:

cd ~/fastapi_app

Aktivieren Sie die virtuelle Umgebung:

source venv/bin/activate

Bearbeiten Sie die Hauptdatei der App:

nano main.py

Starten Sie den FastAPI-Dienst neu, um die Änderungen zu übernehmen:

sudo systemctl restart uvicorn-fastapi

6. Protokolle anzeigen

Sie können die Protokolle für Uvicorn und Nginx wie folgt überprüfen:

  • Uvicorn-Protokolle: /var/log/uvicorn/
  • Nginx-Fehlerprotokoll: /var/log/nginx/error.log
  • Nginx-Zugriffsprotokoll: /var/log/nginx/access.log

Um sie anzusehen:

sudo tail -f /var/log/uvicorn/*

7. Zugriff auf Ihre API

Sobald der Dienst ausgeführt wird, ist Ihre FastAPI-App in Ihrem Browser unter folgender Adresse verfügbar: http://<server-ip>

Nginx leitet HTTP-Anfragen automatisch an den Uvicorn-Socket weiter, auf dem Ihre FastAPI-App ausgeführt wird.

8. Ändern der Domäne oder des Ports

Wenn Sie den Servernamen, den Port oder die Domäne aktualisieren möchten:

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

9. Uvicorn-Dienst

Die FastAPI-App läuft über einen systemd-Dienst namens uvicorn-fastapi.

Es verwendet /home/fastapi/fastapi_app/main:app als Einstiegspunkt für die Anwendung und startet bei einem Fehler automatisch neu.

Zur Verwaltung des Dienstes:

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)

Verwenden Sie Certbot, um HTTPS zu aktivieren.

Anwendungsdetails