services: # MongoDB pour la persistance mongo: image: mongo:latest container_name: pkiapi-mongo ports: - "27017:27017" environment: MONGO_INITDB_ROOT_USERNAME: admin MONGO_INITDB_ROOT_PASSWORD: password MONGO_INITDB_DATABASE: pkiapi volumes: - mongo_data:/data/db networks: - pkiapi-network healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 5 # API PKI api: build: context: . dockerfile: Dockerfile container_name: pkiapi ports: - "8080:8080" environment: PORT: 8080 STORAGE_TYPE: mongodb MONGO_URI: mongodb://admin:password@mongo:27017 MONGO_DB: pkiapi JWT_SECRET_KEY: ${JWT_SECRET_KEY:-super-secret-key-change-in-production} GIN_MODE: release depends_on: mongo: condition: service_healthy networks: - pkiapi-network restart: unless-stopped volumes: mongo_data: driver: local networks: pkiapi-network: driver: bridge