version: '3.8' services: api: build: . container_name: anime_tracker_api expose: - "8000" environment: - DATABASE_URL=${DATABASE_URL:-postgresql://user:password@host:5432/anime_tracker} - SECRET_KEY=${SECRET_KEY:-change-this-secret-key-in-production-min-32-characters-long} restart: unless-stopped networks: - coolify labels: - "traefik.enable=true" # Remplace par ton domaine exact - "traefik.http.routers.anime-tracker.rule=Host(`anime-tracker.holo795.fr`)" # Indique à Traefik d'utiliser l'entrypoint HTTP (port 80) - "traefik.http.routers.anime-tracker.entrypoints=http" # CRUCIAL : Dit à Traefik de taper sur le port 8000 du conteneur - "traefik.http.services.anime-tracker.loadbalancer.server.port=8000" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/api/health"] interval: 30s timeout: 10s retries: 3 networks: coolify: external: true