# 生产参考编排:app + postgres + redis 同机部署 # 实际部署到腾讯云轻量应用服务器时按需调整端口/卷/资源限制 services: app: build: context: . dockerfile: docker/Dockerfile container_name: wxmp-app restart: always env_file: .env environment: NODE_ENV: production ports: - "3090:3090" depends_on: postgres: condition: service_healthy redis: condition: service_healthy postgres: image: postgres:16-alpine container_name: wxmp-postgres restart: always environment: POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB:-wxmp} volumes: - wxmp_pg_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-postgres}"] interval: 5s timeout: 3s retries: 10 redis: image: redis:7-alpine container_name: wxmp-redis restart: always command: ["redis-server", "--appendonly", "yes"] volumes: - wxmp_redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 3s retries: 10 volumes: wxmp_pg_data: wxmp_redis_data: