#version: '3.9' services: db: image: postgres:15 container_name: fiscad-db restart: always environment: POSTGRES_DB: ${POSTGRES_DB_FISCAD} POSTGRES_USER: ${POSTGRES_USER_FISCAD} POSTGRES_PASSWORD_FILE: /run/secrets/postgresPassword secrets: - postgresPassword ports: - "5432:5432" volumes: - db-data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER}"] interval: 10s timeout: 5s retries: 5 app: build: context: . dockerfile: Dockerfile container_name: fiscad-app restart: on-failure depends_on: - db environment: SPRING_DATASOURCE_URL: jdbc:postgresql://db:5432/${POSTGRES_DB_FISCAD} SPRING_DATASOURCE_USERNAME: ${POSTGRES_USER_FISCAD} SPRING_DATASOURCE_PASSWORD_FILE: /run/secrets/postgresPassword SERVER_PORT: 8282 IO_GMSS_FISCAD_PROFILE: dgi SPRING_PROFILES_ACTIVE: dgi # 🔐 Secrets Spring (fichiers) DEFAULT_USER_NAME_FILE: /run/secrets/defaultUserName DEFAULT_USER_PASSWORD_FILE: /run/secrets/defaultUserPassword secrets: - defaultUserName - defaultUserPassword - postgresPassword ports: - "8282:8282" volumes: - ./uploads:/app/uploads - ./jasperReport:/app/jasperReport - ./logs:/app/logs volumes: db-data: secrets: defaultUserName: file: /secrets/defaultUserName.txt defaultUserPassword: file: ./secrets/defaultUserPassword.txt postgresPassword: file: ./secrets/postgresPassword.txt