docker-compose.yml 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. # Licensed to the Apache Software Foundation (ASF) under one
  2. # or more contributor license agreements. See the NOTICE file
  3. # distributed with this work for additional information
  4. # regarding copyright ownership. The ASF licenses this file
  5. # to you under the Apache License, Version 2.0 (the
  6. # "License"); you may not use this file except in compliance
  7. # with the License. You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. version: "3"
  17. networks:
  18. dolphinscheduler-postgresql:
  19. driver: bridge
  20. dolphinscheduler-zookeeper:
  21. driver: bridge
  22. dolphinscheduler-api:
  23. driver: bridge
  24. dolphinscheduler-frontend:
  25. driver: bridge
  26. dolphinscheduler-alert:
  27. driver: bridge
  28. dolphinscheduler-master:
  29. driver: bridge
  30. dolphinscheduler-worker:
  31. driver: bridge
  32. volumes:
  33. dolphinscheduler-postgresql:
  34. dolphinscheduler-zookeeper:
  35. dolphinscheduler-api:
  36. dolphinscheduler-frontend:
  37. dolphinscheduler-alert:
  38. dolphinscheduler-master:
  39. dolphinscheduler-worker-data:
  40. dolphinscheduler-worker-logs:
  41. dolphinscheduler-worker-task-env:
  42. services:
  43. dolphinscheduler-postgresql:
  44. image: bitnami/postgresql:latest
  45. container_name: dolphinscheduler-postgresql
  46. ports:
  47. - 5432:5432
  48. environment:
  49. TZ: Asia/Shanghai
  50. POSTGRESQL_USERNAME: root
  51. POSTGRESQL_PASSWORD: root
  52. POSTGRESQL_DATABASE: dolphinscheduler
  53. healthcheck:
  54. test: ["CMD", "pg_isready", "-U", "${POSTGRESQL_USERNAME}", "-d", "{POSTGRESQL_PASSWORD}", "-h", "localhost", "5432"]
  55. interval: 30s
  56. timeout: 5s
  57. retries: 3
  58. # start_period: 30s
  59. volumes:
  60. - dolphinscheduler-postgresql:/bitnami/postgresql
  61. networks:
  62. - dolphinscheduler-postgresql
  63. dolphinscheduler-zookeeper:
  64. image: bitnami/zookeeper:latest
  65. container_name: dolphinscheduler-zookeeper
  66. ports:
  67. - 2181:2181
  68. environment:
  69. TZ: Asia/Shanghai
  70. ALLOW_ANONYMOUS_LOGIN: "yes"
  71. healthcheck:
  72. test: ["CMD-SHELL", "nc -z localhost 2181"]
  73. interval: 30s
  74. timeout: 5s
  75. retries: 3
  76. # start_period: 30s
  77. volumes:
  78. - dolphinscheduler-zookeeper:/bitnami/zookeeper
  79. networks:
  80. - dolphinscheduler-zookeeper
  81. dolphinscheduler-api:
  82. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
  83. container_name: dolphinscheduler-api
  84. command: ["api-server"]
  85. ports:
  86. - 12345:12345
  87. environment:
  88. TZ: Asia/Shanghai
  89. POSTGRESQL_HOST: dolphinscheduler-postgresql
  90. POSTGRESQL_PORT: 5432
  91. POSTGRESQL_USERNAME: root
  92. POSTGRESQL_PASSWORD: root
  93. POSTGRESQL_DATABASE: dolphinscheduler
  94. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  95. healthcheck:
  96. test: ["CMD-SHELL", "curl -f http://localhost:12345"]
  97. interval: 30s
  98. timeout: 5s
  99. retries: 3
  100. # start_period: 30s
  101. depends_on:
  102. - dolphinscheduler-postgresql
  103. - dolphinscheduler-zookeeper
  104. volumes:
  105. - dolphinscheduler-api:/opt/dolphinscheduler/logs
  106. networks:
  107. - dolphinscheduler-api
  108. - dolphinscheduler-postgresql
  109. - dolphinscheduler-zookeeper
  110. dolphinscheduler-frontend:
  111. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
  112. container_name: dolphinscheduler-frontend
  113. command: ["frontend"]
  114. ports:
  115. - 8888:8888
  116. environment:
  117. TZ: Asia/Shanghai
  118. FRONTEND_API_SERVER_HOST: dolphinscheduler-api
  119. FRONTEND_API_SERVER_PORT: 12345
  120. healthcheck:
  121. test: ["CMD-SHELL", "curl -f http://localhost:8888"]
  122. interval: 30s
  123. timeout: 5s
  124. retries: 3
  125. # start_period: 30s
  126. depends_on:
  127. - dolphinscheduler-api
  128. volumes:
  129. - dolphinscheduler-frontend:/var/log/nginx
  130. networks:
  131. - dolphinscheduler-api
  132. dolphinscheduler-alert:
  133. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
  134. container_name: dolphinscheduler-alert
  135. command: ["alert-server"]
  136. environment:
  137. TZ: Asia/Shanghai
  138. XLS_FILE_PATH: "/tmp/xls"
  139. MAIL_SERVER_HOST: ""
  140. MAIL_SERVER_PORT: ""
  141. MAIL_SENDER: ""
  142. MAIL_USER: ""
  143. MAIL_PASSWD: ""
  144. MAIL_SMTP_STARTTLS_ENABLE: "false"
  145. MAIL_SMTP_SSL_ENABLE: "false"
  146. MAIL_SMTP_SSL_TRUST: ""
  147. ENTERPRISE_WECHAT_ENABLE: "false"
  148. ENTERPRISE_WECHAT_CORP_ID: ""
  149. ENTERPRISE_WECHAT_SECRET: ""
  150. ENTERPRISE_WECHAT_AGENT_ID: ""
  151. ENTERPRISE_WECHAT_USERS: ""
  152. POSTGRESQL_HOST: dolphinscheduler-postgresql
  153. POSTGRESQL_PORT: 5432
  154. POSTGRESQL_USERNAME: root
  155. POSTGRESQL_PASSWORD: root
  156. POSTGRESQL_DATABASE: dolphinscheduler
  157. healthcheck:
  158. test: ["CMD", "/root/checkpoint.sh", "AlertServer"]
  159. interval: 30s
  160. timeout: 5s
  161. retries: 3
  162. # start_period: 30s
  163. depends_on:
  164. - dolphinscheduler-postgresql
  165. volumes:
  166. - dolphinscheduler-alert:/opt/dolphinscheduler/logs
  167. networks:
  168. - dolphinscheduler-alert
  169. - dolphinscheduler-postgresql
  170. dolphinscheduler-master:
  171. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
  172. container_name: dolphinscheduler-master
  173. command: ["master-server"]
  174. ports:
  175. - 5678:5678
  176. environment:
  177. TZ: Asia/Shanghai
  178. MASTER_EXEC_THREADS: "100"
  179. MASTER_EXEC_TASK_NUM: "20"
  180. MASTER_HEARTBEAT_INTERVAL: "10"
  181. MASTER_TASK_COMMIT_RETRYTIMES: "5"
  182. MASTER_TASK_COMMIT_INTERVAL: "1000"
  183. MASTER_MAX_CPULOAD_AVG: "100"
  184. MASTER_RESERVED_MEMORY: "0.1"
  185. POSTGRESQL_HOST: dolphinscheduler-postgresql
  186. POSTGRESQL_PORT: 5432
  187. POSTGRESQL_USERNAME: root
  188. POSTGRESQL_PASSWORD: root
  189. POSTGRESQL_DATABASE: dolphinscheduler
  190. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  191. healthcheck:
  192. test: ["CMD", "/root/checkpoint.sh", "MasterServer"]
  193. interval: 30s
  194. timeout: 5s
  195. retries: 3
  196. # start_period: 30s
  197. depends_on:
  198. - dolphinscheduler-postgresql
  199. - dolphinscheduler-zookeeper
  200. volumes:
  201. - dolphinscheduler-master:/opt/dolphinscheduler/logs
  202. networks:
  203. - dolphinscheduler-postgresql
  204. - dolphinscheduler-zookeeper
  205. dolphinscheduler-worker:
  206. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
  207. container_name: dolphinscheduler-worker
  208. command: ["worker-server"]
  209. ports:
  210. - 1234:1234
  211. - 50051:50051
  212. environment:
  213. TZ: Asia/Shanghai
  214. WORKER_EXEC_THREADS: "100"
  215. WORKER_HEARTBEAT_INTERVAL: "10"
  216. WORKER_FETCH_TASK_NUM: "3"
  217. WORKER_MAX_CPULOAD_AVG: "100"
  218. WORKER_RESERVED_MEMORY: "0.1"
  219. WORKER_GROUP: "default"
  220. DOLPHINSCHEDULER_DATA_BASEDIR_PATH: "/tmp/dolphinscheduler"
  221. POSTGRESQL_HOST: dolphinscheduler-postgresql
  222. POSTGRESQL_PORT: 5432
  223. POSTGRESQL_USERNAME: root
  224. POSTGRESQL_PASSWORD: root
  225. POSTGRESQL_DATABASE: dolphinscheduler
  226. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  227. healthcheck:
  228. test: ["CMD", "/root/checkpoint.sh", "WorkerServer"]
  229. interval: 30s
  230. timeout: 5s
  231. retries: 3
  232. # start_period: 30s
  233. depends_on:
  234. - dolphinscheduler-postgresql
  235. - dolphinscheduler-zookeeper
  236. volumes:
  237. - dolphinscheduler-worker-data:/tmp/dolphinscheduler
  238. - dolphinscheduler-worker-logs:/opt/dolphinscheduler/logs
  239. - dolphinscheduler-worker-task-env:/opt/dolphinscheduler/conf/env/
  240. networks:
  241. - dolphinscheduler-postgresql
  242. - dolphinscheduler-zookeeper