version: '3.8' services: postgres: image: postgres:16-alpine container_name: redflag-postgres environment: POSTGRES_DB: redflag POSTGRES_USER: redflag POSTGRES_PASSWORD: redflag volumes: - postgres-data:/var/lib/postgresql/data ports: - "5432:5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U redflag"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped server: build: context: ./aggregator-server dockerfile: Dockerfile container_name: redflag-server volumes: - ./aggregator-agent/redflag-agent:/app/redflag-agent:ro - ./aggregator-server/.env:/app/.env - server-data:/app/data depends_on: postgres: condition: service_healthy ports: - "8080:8080" environment: - REDFLAG_DB_HOST=postgres - REDFLAG_DB_PORT=5432 - REDFLAG_DB_NAME=redflag - REDFLAG_DB_USER=redflag - REDFLAG_DB_PASSWORD=redflag - REDFLAG_SERVER_HOST=0.0.0.0 - REDFLAG_SERVER_PORT=8080 restart: unless-stopped volumes: postgres-data: server-data: