name: xiaoxia-staging # =========================================== # 日志轮转配置(所有服务共享) # =========================================== x-logging: &default-logging driver: json-file options: max-size: "50m" max-file: "3" services: postgres-staging: image: postgres:16 container_name: xiaoxia-postgres-staging restart: always environment: POSTGRES_DB: ${POSTGRES_DB:-xiaoxia_saas_staging} POSTGRES_USER: ${POSTGRES_USER:-xiaoxia} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme_in_staging} ports: - "127.0.0.1:${POSTGRES_PORT:-5434}:5432" volumes: - postgres_staging_data:/var/lib/postgresql/data networks: - xiaoxia-net logging: *default-logging healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-xiaoxia} -d ${POSTGRES_DB:-xiaoxia_saas_staging}"] interval: 30s timeout: 5s retries: 5 redis-staging: image: redis:7 container_name: xiaoxia-redis-staging restart: always ports: - "127.0.0.1:${REDIS_PORT:-6381}:6379" volumes: - redis_staging_data:/data networks: - xiaoxia-net logging: *default-logging healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 30s timeout: 3s retries: 5 volumes: postgres_staging_data: redis_staging_data: networks: xiaoxia-net: external: true name: xiaoxia-net-staging