1. Połącz się z serwerem
Użyj SSH, aby połączyć się z serwerem:
ssh root@<server-ip>
2. Uzyskaj dostęp do danych logowania
Do zarządzania aplikacją został utworzony dedykowany użytkownik o nazwie fastapi.
Dane logowania znajdziesz w tym pliku: /root/.fastapi-creds
Aby je wyświetlić, uruchom:
cat /root/.fastapi-creds
Aby zmienić hasło, użyj:
passwd fastapi
3. Przełącz się na użytkownika aplikacji
Przełącz się na konto użytkownika fastapi, aby zarządzać aplikacją:
su - flask
To konto zawiera projekt FastAPI wraz ze środowiskiem.
4. Project Structure
Domyślna struktura katalogów wygląda następująco:
/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
Zrestartuj usługę FastAPI, aby zastosować zmiany:
sudo systemctl restart uvicorn-fastapi
6. Viewing Logs
Logi Uvicorn i Nginx możesz sprawdzić w następujący sposób:
- Uvicorn logs:
/var/log/uvicorn/ - Log błędów Nginx:
/var/log/nginx/error.log - Log dostępu Nginx:
/var/log/nginx/access.log
To view them:
sudo tail -f /var/log/uvicorn/*
7. Dostęp do API
Gdy usługa działa, aplikacja FastAPI jest dostępna w przeglądarce pod adresem: http://<server-ip>
Nginx automatycznie przekazuje żądania HTTP do gniazda Uvicorn obsługującego aplikację FastAPI.
8. Zmiana domeny lub portu
Jeśli chcesz zaktualizować nazwę serwera, port lub domenę:
- Edytuj konfigurację strony Nginx:
sudo nano /etc/nginx/sites-available/uvicorn-fastapi - Test configuration:
sudo nginx -t - Reload Nginx:
sudo systemctl restart nginx
9. Uvicorn Service
Aplikacja FastAPI działa jako usługa systemd o nazwie uvicorn-fastapi.
It uses /home/fastapi/fastapi_app/main:app jako punkt wejścia aplikacji i automatycznie restartuje się po 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 HTTPS (opcjonalnie)
Użyj Certbot, aby włączyć HTTPS.