Spaces:
Sleeping
Documentation du Déploiement Backend sur Hugging Face (Docker)
Cette documentation explique les modifications apportées au dossier backend pour permettre son déploiement sur Hugging Face Spaces en utilisant Docker.
1. Fichiers Ajoutés
Dockerfile
Le fichier Dockerfile est le cœur de la configuration Docker. Il effectue les actions suivantes :
- Utilise une image de base Python 3.10.
- Installe les dépendances système nécessaires à OpenCV (
libgl1-mesa-glx,libglib2.0-0). - Installe les dépendances Python listées dans
requirements.txt(incluantgunicorn). - Configure le port par défaut sur
7860(obligatoire pour Hugging Face Spaces). - Exécute les migrations de base de données et
collectstaticau démarrage du build. - Utilise
gunicornpour servir l'application de manière robuste.
README.md
Ce fichier contient les métadonnées YAML nécessaires à Hugging Face pour identifier le SDK (Docker) et le port de l'application.
2. Modifications de Configuration
Port de l'Application
Hugging Face Spaces expose l'application sur le port 7860. Le Dockerfile est configuré pour lancer Gunicorn sur ce port spécifique :
gunicorn --bind 0.0.0.0:7860 satcap_project.wsgi:application
Gestion des Fichiers Statiques et Media
Dans un environnement Docker éphémère comme Hugging Face Spaces :
- Les fichiers media (images uploadées) seront stockés localement dans le conteneur mais seront perdus au redémarrage du Space.
- Pour une utilisation en production réelle, un stockage externe (comme AWS S3 ou Google Cloud Storage) serait recommandé.
3. Procédure d'Upload
Pour uploader le backend sur votre Space SATCAP-OCEANS_DOCKER :
Initialiser Git (si ce n'est pas déjà fait) :
cd backend git initAjouter le remote Hugging Face :
git remote add hf https://huggingface.co/spaces/CosmoLABHub/SATCAP-OCEANS_DOCKERPréparer le README : Copiez le contenu de
README_HF.mddans un fichier nomméREADME.md(Hugging Face a besoin du nom exactREADME.md).Pousser vers Hugging Face :
git add . git commit -m "Configuration Docker pour Hugging Face" git push hf main --force
4. Utilisation comme API
Une fois le Space "Running", l'URL de l'API sera :
https://cosmolabhub-satcap-oceans-docker.hf.space/api/detect/
Vous pouvez utiliser cette URL dans votre frontend pour envoyer des requêtes de détection.