FastAPI

Nowoczesny, wysokowydajny framework internetowy Python do tworzenia interfejsów API z podpowiedziami typów.

1. Połącz się z serwerem

Użyj SSH, aby połączyć się z serwerem:

ssh root@<server-ip>

2. Dane logowania

W celu zarządzania aplikacją utworzono dedykowanego użytkownika o nazwie fastapi.

Dane logowania znajdziesz w tym pliku: /root/.fastapi-creds

Aby je wyświetlić, uruchom:

cat /root/.fastapi-creds

Jeśli chcesz zmienić hasło, użyj:

passwd fastapi

3. Przejdź do użytkownika aplikacji

Przejdź do konta użytkownika fastapi, aby zarządzać swoją aplikacją:

su - flask

To konto zawiera Twój projekt FastAPI i środowisko.

4. Struktura projektu

Oto domyślny układ katalogów:

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

5. Zarządzanie aplikacją

Przejdź do katalogu aplikacji:

cd ~/fastapi_app

Aktywuj środowisko wirtualne:

source venv/bin/activate

Edytuj główny plik aplikacji:

nano main.py

Uruchom ponownie usługę FastAPI, aby zastosować zmiany:

sudo systemctl restart uvicorn-fastapi

6. Wyświetlanie dzienników

Możesz sprawdzić logi dla Uvicorn i Nginx w następujący sposób:

  • Dzienniki Uvicorn: /var/log/uvicorn/
  • Dziennik błędów Nginx: /var/log/nginx/error.log
  • Dziennik dostępu Nginx: /var/log/nginx/access.log

Aby je wyświetlić:

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

7. Dostęp do Twojego API

Po uruchomieniu usługi aplikacja FastAPI będzie dostępna w przeglądarce pod adresem: http://<server-ip>

Nginx automatycznie przekazuje żądania HTTP do gniazda Uvicorn, na którym działa aplikacja FastAPI.

8. Zmiana domeny lub portu

Jeśli chcesz zaktualizować nazwę serwera, port lub domenę:

  1. Edytuj konfigurację witryny Nginx: sudo nano /etc/nginx/sites-available/uvicorn-fastapi
  2. Konfiguracja testowa: sudo nginx -t
  3. Przeładuj Nginx: sudo systemctl restart nginx

9. Usługa Uvicorn

Aplikacja FastAPI działa poprzez usługę systemd o nazwie uvicorn-fastapi.

Wykorzystuje /home/fastapi/fastapi_app/main:app jako punkt wejścia aplikacji i automatycznie uruchamia się ponownie w przypadku awarii.

Aby zarządzać usługą:

systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi

Aby edytować usługę:

sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi

10. Włącz protokół HTTPS (opcjonalnie)

Użyj Certbot, aby włączyć HTTPS.

Szczegóły aplikacji