docker-compose.yml 2.1 KB

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