version: '3.8' services: java-backend: container_name: java-backend image: xjz/java-backend:1.0.0 restart: always environment: TZ: "Asia/Shanghai" # 默认 prod。联调/测试机:SPRING_PROFILES_ACTIVE=test docker compose up -d(同 deploy.sh 的说明) SPRING_PROFILES_ACTIVE: "${SPRING_PROFILES_ACTIVE:-prod}" # 乐收赢通道总开关,默认 true(不写就是开,与代码里的默认值一致)。 # 本文件没有 env_file ⇒ ★ 宿主机上 export 了也进不了容器,必须靠这一行透传。 # 通道还没有真实凭据时置 false:该模块的 7 个控制器与 2 个定时任务都不装配, # 应用照常启动(否则会被 LeshouyingProperties 的文档测试配置闸挡住,起不来)。 # 用法:LESHOUYING_ENABLED=false docker compose up -d LESHOUYING_ENABLED: "${LESHOUYING_ENABLED:-true}" # 关通道只走上面这一行。JAVA_OPTS 里写 -DLESHOUYING_ENABLED=false 是空操作, # 实测 2026-09-28:全大写加下划线那条宽松形态是环境变量专有的,系统属性只认 # leshouying.enabled。症状与「压根没写这一行」一模一样,别踩。 JAVA_OPTS: "-Xms256m -Xmx512m" SPRING_DATASOURCE_DRUID_URL: jdbc:postgresql://postgres:5432/payment_platform_java?currentSchema=public SPRING_DATASOURCE_DRUID_USERNAME: admin SPRING_DATASOURCE_DRUID_PASSWORD: 'xjz#123321' SPRING_DATA_REDIS_HOST: redis SPRING_DATA_REDIS_PORT: 6379 SPRING_DATA_REDIS_DATABASE: 0 SPRING_DATA_REDIS_PASSWORD: '123456#xjz' ports: - "8001:8001" networks: - app-tier - deploy_app-tier healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8001/api/v1/payment/notify/health"] interval: 30s timeout: 10s retries: 3 start_period: 60s frontend: container_name: frontend image: xjz/frontend:2.5.4 restart: always environment: TZ: "Asia/Shanghai" ports: - "5173:80" networks: - app-tier networks: app-tier: driver: bridge deploy_app-tier: external: true