services: postgres: image: timescale/timescaledb:latest-pg16 container_name: invest-copilot-postgres environment: POSTGRES_DB: invest_copilot POSTGRES_USER: dev POSTGRES_PASSWORD: dev_password POSTGRES_HOST_AUTH_METHOD: md5 ports: - "5433:5432" volumes: - pgdata:/var/lib/postgresql/data - ./docker/init.sql:/docker-entrypoint-initdb.d/01-init.sql healthcheck: test: ["CMD-SHELL", "pg_isready -U dev -d invest_copilot"] interval: 10s timeout: 5s retries: 5 command: > postgres -c max_connections=200 -c shared_buffers=256MB -c effective_cache_size=768MB -c work_mem=4MB -c maintenance_work_mem=64MB redis: image: redis:7-alpine container_name: invest-copilot-redis ports: - "6380:6379" volumes: - redisdata:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 minio: image: minio/minio container_name: invest-copilot-minio command: server /data --console-address ":9001" environment: MINIO_ROOT_USER: dev MINIO_ROOT_PASSWORD: dev_password ports: - "9000:9000" - "9001:9001" volumes: - miniodata:/data healthcheck: test: ["CMD", "mc", "ready", "local"] interval: 10s timeout: 5s retries: 5 volumes: pgdata: redisdata: miniodata: