version: '3.8' services: # PostgreSQL Database postgres: image: postgres:15-alpine container_name: vip-postgres environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: changeme POSTGRES_DB: vip_coordinator ports: - "5433:5432" # Using 5433 on host to avoid conflict volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 5s timeout: 5s retries: 5 restart: unless-stopped # Redis (Optional - for caching/sessions) redis: image: redis:7-alpine container_name: vip-redis ports: - "6380:6379" # Using 6380 on host to avoid conflicts volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 3s retries: 5 restart: unless-stopped volumes: postgres_data: name: vip_postgres_data redis_data: name: vip_redis_data