1. Connettiti al tuo server
Usa SSH per connetterti al tuo server:
ssh root@<server-ip>
2. Accesso alle credenziali
È stato creato un utente dedicato chiamato fastapi per gestire la tua applicazione.
Puoi trovare le credenziali di accesso in questo file: /root/.fastapi-creds
Per visualizzarle, esegui:
cat /root/.fastapi-creds
Per cambiare la password, usa:
passwd fastapi
3. Passa all'utente dell'app
Passa all'account utente fastapi per gestire la tua app:
su - flask
Questo account contiene il progetto e l'ambiente FastAPI.
4. Struttura del Progetto
Struttura predefinita delle directory:
/home/fastapi/fastapi_app/
├── main.py → Your main FastAPI application file
├── venv/ → Virtual environment
└── __pycache__/ → Compiled Python files (auto-generated)
5. Gestione dell'applicazione
Vai alla directory dell'applicazione:
cd ~/fastapi_app
Attiva l'ambiente virtuale:
source venv/bin/activate
Modifica il file principale dell'app:
nano main.py
Riavvia il servizio FastAPI per applicare le modifiche:
sudo systemctl restart uvicorn-fastapi
6. Visualizzazione dei registri
Puoi controllare i log di Uvicorn e Nginx come segue:
- Log Uvicorn:
/var/log/uvicorn/ - Log degli errori di Nginx:
/var/log/nginx/error.log - Log degli accessi di Nginx:
/var/log/nginx/access.log
Per visualizzarli:
sudo tail -f /var/log/uvicorn/*
7. Accesso a API
Una volta avviato il servizio, la tua app FastAPI è disponibile nel browser all'indirizzo: http://<server-ip>
Nginx inoltra automaticamente le richieste HTTP al socket Uvicorn che esegue la tua app FastAPI.
8. Modifica del dominio o della porta
Per aggiornare il nome del server, la porta o il dominio:
- Modifica la configurazione del sito Nginx:
sudo nano /etc/nginx/sites-available/uvicorn-fastapi - Configurazione di prova:
sudo nginx -t - Ricarica Nginx:
sudo systemctl restart nginx
9. Servizio Uvicorn
L'app FastAPI viene eseguita tramite un servizio systemd chiamato uvicorn-fastapi.
Utilizza /home/fastapi/fastapi_app/main:app come punto di ingresso dell'applicazione e si riavvia automaticamente in caso di errore.
Per gestire il servizio:
systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi
Per modificare il servizio:
sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi
10. Abilitare HTTPS (opzionale)
Usa Certbot per abilitare HTTPS.