docker-compose.yml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  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.4"
  17. services:
  18. dolphinscheduler-postgresql:
  19. image: bitnami/postgresql:latest
  20. container_name: dolphinscheduler-postgresql
  21. ports:
  22. - 5432:5432
  23. environment:
  24. TZ: Asia/Shanghai
  25. POSTGRESQL_USERNAME: root
  26. POSTGRESQL_PASSWORD: root
  27. POSTGRESQL_DATABASE: dolphinscheduler
  28. volumes:
  29. - dolphinscheduler-postgresql:/bitnami/postgresql
  30. networks:
  31. - dolphinscheduler
  32. dolphinscheduler-zookeeper:
  33. image: bitnami/zookeeper:latest
  34. container_name: dolphinscheduler-zookeeper
  35. ports:
  36. - 2181:2181
  37. environment:
  38. TZ: Asia/Shanghai
  39. ALLOW_ANONYMOUS_LOGIN: "yes"
  40. volumes:
  41. - dolphinscheduler-zookeeper:/bitnami/zookeeper
  42. networks:
  43. - dolphinscheduler
  44. dolphinscheduler-api:
  45. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:dev
  46. container_name: dolphinscheduler-api
  47. command: ["api-server"]
  48. ports:
  49. - 12345:12345
  50. environment:
  51. TZ: Asia/Shanghai
  52. POSTGRESQL_HOST: dolphinscheduler-postgresql
  53. POSTGRESQL_PORT: 5432
  54. POSTGRESQL_USERNAME: root
  55. POSTGRESQL_PASSWORD: root
  56. POSTGRESQL_DATABASE: dolphinscheduler
  57. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  58. healthcheck:
  59. test: ["CMD", "/root/checkpoint.sh", "ApiApplicationServer"]
  60. interval: 30s
  61. timeout: 5s
  62. retries: 3
  63. start_period: 30s
  64. depends_on:
  65. - dolphinscheduler-postgresql
  66. - dolphinscheduler-zookeeper
  67. volumes:
  68. - dolphinscheduler-api:/opt/dolphinscheduler/logs
  69. networks:
  70. - dolphinscheduler
  71. dolphinscheduler-frontend:
  72. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:dev
  73. container_name: dolphinscheduler-frontend
  74. command: ["frontend"]
  75. ports:
  76. - 8888:8888
  77. environment:
  78. TZ: Asia/Shanghai
  79. FRONTEND_API_SERVER_HOST: dolphinscheduler-api
  80. FRONTEND_API_SERVER_PORT: 12345
  81. healthcheck:
  82. test: ["CMD", "nc", "-z", "localhost", "8888"]
  83. interval: 30s
  84. timeout: 5s
  85. retries: 3
  86. start_period: 30s
  87. depends_on:
  88. - dolphinscheduler-api
  89. volumes:
  90. - dolphinscheduler-frontend:/var/log/nginx
  91. networks:
  92. - dolphinscheduler
  93. dolphinscheduler-alert:
  94. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:dev
  95. container_name: dolphinscheduler-alert
  96. command: ["alert-server"]
  97. environment:
  98. TZ: Asia/Shanghai
  99. XLS_FILE_PATH: "/tmp/xls"
  100. MAIL_SERVER_HOST: ""
  101. MAIL_SERVER_PORT: ""
  102. MAIL_SENDER: ""
  103. MAIL_USER: ""
  104. MAIL_PASSWD: ""
  105. MAIL_SMTP_STARTTLS_ENABLE: "false"
  106. MAIL_SMTP_SSL_ENABLE: "false"
  107. MAIL_SMTP_SSL_TRUST: ""
  108. ENTERPRISE_WECHAT_ENABLE: "false"
  109. ENTERPRISE_WECHAT_CORP_ID: ""
  110. ENTERPRISE_WECHAT_SECRET: ""
  111. ENTERPRISE_WECHAT_AGENT_ID: ""
  112. ENTERPRISE_WECHAT_USERS: ""
  113. POSTGRESQL_HOST: dolphinscheduler-postgresql
  114. POSTGRESQL_PORT: 5432
  115. POSTGRESQL_USERNAME: root
  116. POSTGRESQL_PASSWORD: root
  117. POSTGRESQL_DATABASE: dolphinscheduler
  118. healthcheck:
  119. test: ["CMD", "/root/checkpoint.sh", "AlertServer"]
  120. interval: 30s
  121. timeout: 5s
  122. retries: 3
  123. start_period: 30s
  124. depends_on:
  125. - dolphinscheduler-postgresql
  126. volumes:
  127. - dolphinscheduler-alert:/opt/dolphinscheduler/logs
  128. networks:
  129. - dolphinscheduler
  130. dolphinscheduler-master:
  131. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:dev
  132. container_name: dolphinscheduler-master
  133. command: ["master-server"]
  134. ports:
  135. - 5678:5678
  136. environment:
  137. TZ: Asia/Shanghai
  138. MASTER_EXEC_THREADS: "100"
  139. MASTER_EXEC_TASK_NUM: "20"
  140. MASTER_HEARTBEAT_INTERVAL: "10"
  141. MASTER_TASK_COMMIT_RETRYTIMES: "5"
  142. MASTER_TASK_COMMIT_INTERVAL: "1000"
  143. MASTER_MAX_CPULOAD_AVG: "100"
  144. MASTER_RESERVED_MEMORY: "0.1"
  145. POSTGRESQL_HOST: dolphinscheduler-postgresql
  146. POSTGRESQL_PORT: 5432
  147. POSTGRESQL_USERNAME: root
  148. POSTGRESQL_PASSWORD: root
  149. POSTGRESQL_DATABASE: dolphinscheduler
  150. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  151. healthcheck:
  152. test: ["CMD", "/root/checkpoint.sh", "MasterServer"]
  153. interval: 30s
  154. timeout: 5s
  155. retries: 3
  156. start_period: 30s
  157. depends_on:
  158. - dolphinscheduler-postgresql
  159. - dolphinscheduler-zookeeper
  160. volumes:
  161. - dolphinscheduler-master:/opt/dolphinscheduler/logs
  162. networks:
  163. - dolphinscheduler
  164. dolphinscheduler-worker:
  165. image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:dev
  166. container_name: dolphinscheduler-worker
  167. command: ["worker-server"]
  168. ports:
  169. - 1234:1234
  170. - 50051:50051
  171. environment:
  172. TZ: Asia/Shanghai
  173. WORKER_EXEC_THREADS: "100"
  174. WORKER_HEARTBEAT_INTERVAL: "10"
  175. WORKER_FETCH_TASK_NUM: "3"
  176. WORKER_MAX_CPULOAD_AVG: "100"
  177. WORKER_RESERVED_MEMORY: "0.1"
  178. WORKER_GROUP: "default"
  179. DOLPHINSCHEDULER_DATA_BASEDIR_PATH: "/tmp/dolphinscheduler"
  180. POSTGRESQL_HOST: dolphinscheduler-postgresql
  181. POSTGRESQL_PORT: 5432
  182. POSTGRESQL_USERNAME: root
  183. POSTGRESQL_PASSWORD: root
  184. POSTGRESQL_DATABASE: dolphinscheduler
  185. ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
  186. healthcheck:
  187. test: ["CMD", "/root/checkpoint.sh", "WorkerServer"]
  188. interval: 30s
  189. timeout: 5s
  190. retries: 3
  191. start_period: 30s
  192. depends_on:
  193. - dolphinscheduler-postgresql
  194. - dolphinscheduler-zookeeper
  195. volumes:
  196. - type: bind
  197. source: ./dolphinscheduler_env.sh
  198. target: /opt/dolphinscheduler/conf/env/dolphinscheduler_env.sh
  199. - type: volume
  200. source: dolphinscheduler-worker-data
  201. target: /tmp/dolphinscheduler
  202. - type: volume
  203. source: dolphinscheduler-worker-logs
  204. target: /opt/dolphinscheduler/logs
  205. networks:
  206. - dolphinscheduler
  207. networks:
  208. dolphinscheduler:
  209. driver: bridge
  210. volumes:
  211. dolphinscheduler-postgresql:
  212. dolphinscheduler-zookeeper:
  213. dolphinscheduler-api:
  214. dolphinscheduler-frontend:
  215. dolphinscheduler-alert:
  216. dolphinscheduler-master:
  217. dolphinscheduler-worker-data:
  218. dolphinscheduler-worker-logs:
  219. configs:
  220. dolphinscheduler-worker-task-env:
  221. file: ./dolphinscheduler_env.sh