Date : 08/01/2026 18:57 Statut : En attente de validation
Le container yolo-api tourne actuellement en mode standby (sleep infinity) sans API exposee.
Une API FastAPI complete existe deja dans /stock_8to/33800-stack/docker/yolo-api/ mais n'est pas deployee.
Modifier /stock_8to/33800-stack/docker/stacks/yolo-api/docker-compose.yml pour :
Nouvelle configuration :
services:
yolo-api:
build:
context: /mnt/stock_8to/33800-stack/docker/yolo-api
container_name: yolo-api
ports:
- "9200:9200"
restart: unless-stopped
environment:
- YOLO_MODEL=yolov8n.pt
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9200/health"]
interval: 30s
timeout: 10s
retries: 3
networks:
- ai-services
networks:
ai-services:
driver: bridge
Transferer les fichiers de l'API :
Dockerfileapp.pyVers /mnt/stock_8to/33800-stack/docker/yolo-api/ sur prod-portainer
docker compose down
docker compose up -d --build
Fichier : /etc/nginx/sites-available/yolo.33800.nowhere84.com.conf
server {
listen 443 ssl http2;
server_name yolo.33800.nowhere84.com;
ssl_certificate /etc/letsencrypt/live/33800.nowhere84.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/33800.nowhere84.com/privkey.pem;
access_log /var/log/nginx/yolo.33800.nowhere84.com.access.log;
error_log /var/log/nginx/yolo.33800.nowhere84.com.error.log;
client_max_body_size 50M;
location / {
proxy_pass http://192.168.1.12:9200;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Timeout pour upload d'images
proxy_read_timeout 120s;
proxy_send_timeout 120s;
}
}
server {
listen 80;
server_name yolo.33800.nowhere84.com;
return 301 https://$host$request_uri;
}
# Sur nginx
sudo ln -s /etc/nginx/sites-available/yolo.33800.nowhere84.com.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
| Endpoint | Methode | Description |
|---|---|---|
/ |
GET | Info service |
/health |
GET | Health check |
/detect |
POST | Detection objets -> JSON |
/detect/image |
POST | Detection -> Image annotee |
/classes |
GET | Liste des 80 classes COCO |
# Verifier sante
curl https://yolo.33800.nowhere84.com/health
# Tester detection
curl -X POST https://yolo.33800.nowhere84.com/detect \
-F "file=@image.jpg" \
-F "confidence=0.5"
Attente validation pour executer.