docker-compose.yml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. # 1. 基础环境变量(所有服务通用)
  2. x-java-env: &java-env
  3. TZ: Asia/Shanghai
  4. JASYPT_ENCRYPTOR_PASSWORD: alien_salt
  5. LOGGING_PATH: /app/logs
  6. # 2. 代理环境变量(在基础版之上增加代理)
  7. x-proxy-env: &proxy-env
  8. <<: *java-env
  9. # 3. 容器基础配置模板
  10. x-java-common: &java-common
  11. restart: unless-stopped
  12. working_dir: /app
  13. networks:
  14. - app-network
  15. mem_limit: 800M
  16. mem_reservation: 256M
  17. services:
  18. gateway:
  19. <<: *java-common
  20. image: my-openjdk8-ffmpeg:v1
  21. container_name: gateway-dev
  22. environment:
  23. <<: *java-env # 仅引用基础环境变量
  24. volumes:
  25. - ./gateway:/app
  26. - ./logs/gateway:/app/logs
  27. ports:
  28. - "28000:8000"
  29. command: |
  30. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -jar /app/alien-gateway-1.0.0.jar'
  31. store:
  32. <<: *java-common
  33. image: my-openjdk8-ffmpeg:v1
  34. container_name: store-dev
  35. mem_limit: 700M # 对齐 test 用量比例,留 15~20% 余量
  36. mem_reservation: 384M # 软性内存限制
  37. environment:
  38. <<: *proxy-env # 引用带代理的环境变量
  39. volumes:
  40. - ./store:/app
  41. - ./store/alien/aliPayCert:/usr/local/alien/aliPayCert
  42. - /cert/wechat/:/cert/wechat/
  43. - ./logs/store:/app/logs
  44. ports:
  45. - "28004:30004"
  46. command: |
  47. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -Dloader.path=/app/lib -jar /app/alien-store-1.0.0.jar'
  48. second:
  49. <<: *java-common
  50. image: my-openjdk8-ffmpeg:v1
  51. container_name: second-dev
  52. environment:
  53. <<: *proxy-env
  54. volumes:
  55. - ./second:/app
  56. - ./second/alien/aliPayCert:/usr/local/alien/aliPayCert
  57. - ./logs/second:/app/logs
  58. ports:
  59. - "28005:30005"
  60. command: |
  61. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -jar /app/alien-second-1.0.0.jar'
  62. store-platform:
  63. <<: *java-common
  64. image: my-openjdk8-ffmpeg:v1
  65. container_name: store-platform-dev
  66. environment:
  67. <<: *proxy-env
  68. volumes:
  69. - ./store-platform:/app
  70. - ./store-platform/alien/aliPayCert:/usr/local/alien/aliPayCert
  71. - ./logs/store-platform:/app/logs
  72. ports:
  73. - "28006:30006"
  74. command: |
  75. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -jar /app/alien-store-platform-1.0.0.jar'
  76. lawyer:
  77. <<: *java-common
  78. image: my-openjdk8-ffmpeg:v1
  79. container_name: lawyer-dev
  80. environment:
  81. <<: *proxy-env
  82. volumes:
  83. - ./lawyer:/app
  84. - ./lawyer/alien/aliPayCert:/usr/local/alien/aliPayCert
  85. - ./logs/lawyer:/app/logs
  86. ports:
  87. - "28007:30007"
  88. command: |
  89. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -jar /app/alien-lawyer-1.0.0.jar'
  90. job:
  91. <<: *java-common
  92. image: my-openjdk8-ffmpeg:v1
  93. container_name: job-dev
  94. environment:
  95. <<: *proxy-env
  96. volumes:
  97. - ./job:/app
  98. - ./job/alien/aliPayCert:/usr/local/alien/aliPayCert
  99. - ./logs/job:/app/logs
  100. ports:
  101. - "28008:30008"
  102. - "28018:9999"
  103. command: |
  104. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -jar /app/alien-job-1.0.0.jar'
  105. dining:
  106. <<: *java-common
  107. image: my-openjdk8-ffmpeg:v1
  108. container_name: dining-dev
  109. environment:
  110. <<: *proxy-env # 引用带代理的环境变量
  111. volumes:
  112. - ./dining:/app
  113. - ./dining/alien/aliPayCert:/usr/local/alien/aliPayCert
  114. - /cert/wechat/:/cert/wechat/
  115. - ./logs/dining:/app/logs
  116. ports:
  117. - "28014:30014"
  118. command: |
  119. sh -c 'exec java -Dspring.profiles.active=dev -Dfile.encoding=UTF-8 -Xms384m -Xmx384m -Dloader.path=/app/lib -jar /app/alien-dining-1.0.0.jar'
  120. networks:
  121. app-network:
  122. external: true # 使用同一个外部网络
  123. name: app-network