services: # PostgreSQL Database (ARM64 optimized) postgres: image: postgres:15-alpine platform: linux/arm64 container_name: portfolio_postgres_dev environment: POSTGRES_DB: portfolio_dev POSTGRES_USER: portfolio_user POSTGRES_PASSWORD: portfolio_dev_pass POSTGRES_HOST_AUTH_METHOD: trust ports: - "5432:5432" volumes: - postgres_dev_data:/var/lib/postgresql/data - ./scripts/init-db.sql:/docker-entrypoint-initdb.d/init-db.sql networks: - portfolio_dev healthcheck: test: ["CMD-SHELL", "pg_isready -U portfolio_user -d portfolio_dev"] interval: 10s timeout: 5s retries: 5 # Redis for caching (ARM64 optimized) redis: image: redis:7-alpine platform: linux/arm64 container_name: portfolio_redis_dev ports: - "6379:6379" volumes: - redis_dev_data:/data networks: - portfolio_dev healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 networks: portfolio_dev: driver: bridge volumes: postgres_dev_data: redis_dev_data: