Files
LogiFlow/docker-compose.yml
T
LogiFlowandClaude Opus 5.5 bffdca1297 fix(docker) : docker-compose.yml illisible depuis la suppression de Node (#572)
La suppression du service logiflow-node avait laissé un morceau de sa
définition entre le service logiflow et logiflow-db : le fichier n'était
plus du YAML valide et le déploiement échouait. La CI vérifie désormais
le fichier (docker compose config).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ke2qyS8rgacP3ap5iezDbM
2026-10-15 20:34:46 +02:00

78 lines
2.1 KiB
YAML

version: '3.8'
# logiflow : serveur Rust (server-rs/), qui sert l'API et l'interface, applique
# les migrations au démarrage et lance les tâches de fond (sauvegardes, purge).
x-logiflow-env: &logiflow-env
NODE_ENV: production
DATABASE_URL: postgresql://logiflow_admin:LogiFlow2025!@logiflow-db:5432/logiflow_db
SESSION_SECRET: LogiFlow_Super_Secret_Session_Key_2025_Production
USE_LOCAL_AUTH: "true"
POSTGRES_USER: logiflow_admin
POSTGRES_PASSWORD: LogiFlow2025!
POSTGRES_DB: logiflow_db
BACKUP_DIR: /app/backups
# Clé(s) de l'API externe de rapprochement, lues depuis le .env de l'hôte (vide = API désactivée)
EXTERNAL_API_KEYS: ${EXTERNAL_API_KEYS:-}
# Origines acceptées en plus de l'adresse du site pour les écritures (décision R4)
ALLOWED_ORIGINS: ${ALLOWED_ORIGINS:-}
services:
logiflow:
build:
context: .
dockerfile: Dockerfile
target: production
restart: unless-stopped
environment:
<<: *logiflow-env
PORT: 3000
RUST_LOG: info
ports:
- "3000:3000"
networks:
- nginx_default
depends_on:
logiflow-db:
condition: service_healthy
volumes:
- backup_data:/app/backups
healthcheck:
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
logiflow-db:
image: postgres:15-alpine
restart: unless-stopped
environment:
POSTGRES_DB: logiflow_db
POSTGRES_USER: logiflow_admin
POSTGRES_PASSWORD: LogiFlow2025!
ports:
- "5434:5432"
networks:
- nginx_default
volumes:
- postgres_data:/var/lib/postgresql/data
- ./init.sql:/docker-entrypoint-initdb.d/01-init.sql
- ./migrations:/migrations
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
interval: 15s
timeout: 10s
retries: 10
start_period: 60s
volumes:
postgres_data:
driver: local
backup_data:
driver: local
networks:
nginx_default:
external: true