FastAPI

Un framework web Python moderne et performant pour créer des API avec des indications de type.

1. Connectez-vous à votre serveur

Utilisez SSH pour vous connecter à votre serveur :

ssh root@<server-ip>

2. Identifiants de connexion

Un utilisateur dédié nommé fastapi a été créé pour gérer votre application.

Vous trouverez les identifiants de connexion dans ce fichier : /root/.fastapi-creds

Pour les visualiser, exécutez :

cat /root/.fastapi-creds

Si vous souhaitez modifier le mot de passe, utilisez :

passwd fastapi

3. Passer à l'utilisateur de l'application

Passez au compte utilisateur fastapi pour gérer votre application :

su - flask

Ce compte contient votre projet FastAPI et votre environnement.

4. Structure du projet

Voici la structure par défaut du répertoire :

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

5. Gestion de votre candidature

Accédez au répertoire de l'application :

cd ~/fastapi_app

Activer l'environnement virtuel :

source venv/bin/activate

Modifiez le fichier principal de l'application :

nano main.py

Redémarrez le service FastAPI pour appliquer les modifications :

sudo systemctl restart uvicorn-fastapi

6. Consultation des journaux

Vous pouvez vérifier les journaux pour Uvicorn et Nginx comme suit :

  • Journaux Uvicorn : /var/log/uvicorn/
  • Journal des erreurs Nginx : /var/log/nginx/error.log
  • Journal d'accès Nginx : /var/log/nginx/access.log

Pour les consulter :

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

7. Accéder à votre API

Une fois le service lancé, votre application FastAPI est disponible dans votre navigateur à l'adresse suivante : http://<server-ip>

Nginx transfère automatiquement les requêtes HTTP vers le socket Uvicorn qui exécute votre application FastAPI.

8. Modification du domaine ou du port

Si vous souhaitez mettre à jour le nom du serveur, le port ou le domaine :

  1. Modifier la configuration du site Nginx : sudo nano /etc/nginx/sites-available/uvicorn-fastapi
  2. Configuration du test : sudo nginx -t
  3. Recharger Nginx : sudo systemctl restart nginx

9. Service Uvicorn

L'application FastAPI s'exécute via un service systemd nommé uvicorn-fastapi.

Il utilise /home/fastapi/fastapi_app/main:app comme point d'entrée de l'application et redémarre automatiquement en cas d'échec.

Pour gérer le service :

systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi

Pour modifier le service :

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

10. Activer HTTPS (facultatif)

Utilisez Certbot pour activer HTTPS.

Détails de la demande