services: bot: build: context: . dockerfile: Dockerfile image: shadowbot:latest container_name: shadowbot-bot restart: unless-stopped environment: BOT_TOKEN: ${BOT_TOKEN} DATABASE_URL: postgres://${POSTGRES_USER:-shadowbot}:${POSTGRES_PASSWORD:-shadowbot_dev_password}@postgres:5432/${POSTGRES_DB:-shadowbot} depends_on: postgres: condition: service_healthy postgres: image: postgres:16-alpine container_name: shadowbot-postgres restart: unless-stopped environment: POSTGRES_DB: ${POSTGRES_DB:-shadowbot} POSTGRES_USER: ${POSTGRES_USER:-shadowbot} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-shadowbot_dev_password} ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-shadowbot} -d ${POSTGRES_DB:-shadowbot}"] interval: 10s timeout: 5s retries: 5 start_period: 10s volumes: postgres_data: