docker-compose.yml 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  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.8"
  17. services:
  18. dolphinscheduler-postgresql:
  19. image: bitnami/postgresql:11.11.0
  20. environment:
  21. POSTGRESQL_USERNAME: root
  22. POSTGRESQL_PASSWORD: root
  23. POSTGRESQL_DATABASE: dolphinscheduler
  24. volumes:
  25. - dolphinscheduler-postgresql:/bitnami/postgresql
  26. healthcheck:
  27. test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/5432"]
  28. interval: 5s
  29. timeout: 60s
  30. retries: 120
  31. networks:
  32. - dolphinscheduler
  33. dolphinscheduler-zookeeper:
  34. image: bitnami/zookeeper:3.6.2
  35. environment:
  36. ALLOW_ANONYMOUS_LOGIN: "yes"
  37. ZOO_4LW_COMMANDS_WHITELIST: srvr,ruok,wchs,cons
  38. volumes:
  39. - dolphinscheduler-zookeeper:/bitnami/zookeeper
  40. healthcheck:
  41. test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/2181"]
  42. interval: 5s
  43. timeout: 60s
  44. retries: 120
  45. networks:
  46. - dolphinscheduler
  47. dolphinscheduler-schema-initializer:
  48. image: ${HUB}/dolphinscheduler-tools:${TAG}
  49. env_file: .env
  50. command: [ bin/create-schema.sh ]
  51. depends_on:
  52. dolphinscheduler-postgresql:
  53. condition: service_healthy
  54. volumes:
  55. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  56. - dolphinscheduler-shared-local:/opt/soft
  57. - dolphinscheduler-resource-local:/dolphinscheduler
  58. networks:
  59. - dolphinscheduler
  60. dolphinscheduler-api:
  61. image: ${HUB}/dolphinscheduler-api:${TAG}
  62. ports:
  63. - "12345:12345"
  64. env_file: .env
  65. healthcheck:
  66. test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
  67. interval: 30s
  68. timeout: 5s
  69. retries: 3
  70. depends_on:
  71. dolphinscheduler-schema-initializer:
  72. condition: service_completed_successfully
  73. dolphinscheduler-zookeeper:
  74. condition: service_healthy
  75. volumes:
  76. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  77. - dolphinscheduler-shared-local:/opt/soft
  78. - dolphinscheduler-resource-local:/dolphinscheduler
  79. networks:
  80. - dolphinscheduler
  81. dolphinscheduler-alert:
  82. image: ${HUB}/dolphinscheduler-alert-server:${TAG}
  83. env_file: .env
  84. healthcheck:
  85. test: [ "CMD", "curl", "http://localhost:50053/actuator/health" ]
  86. interval: 30s
  87. timeout: 5s
  88. retries: 3
  89. depends_on:
  90. dolphinscheduler-schema-initializer:
  91. condition: service_completed_successfully
  92. volumes:
  93. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  94. networks:
  95. - dolphinscheduler
  96. dolphinscheduler-master:
  97. image: ${HUB}/dolphinscheduler-master:${TAG}
  98. env_file: .env
  99. healthcheck:
  100. test: [ "CMD", "curl", "http://localhost:5679/actuator/health" ]
  101. interval: 30s
  102. timeout: 5s
  103. retries: 3
  104. depends_on:
  105. dolphinscheduler-schema-initializer:
  106. condition: service_completed_successfully
  107. dolphinscheduler-zookeeper:
  108. condition: service_healthy
  109. volumes:
  110. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  111. - dolphinscheduler-shared-local:/opt/soft
  112. networks:
  113. - dolphinscheduler
  114. dolphinscheduler-worker:
  115. image: ${HUB}/dolphinscheduler-worker:${TAG}
  116. env_file: .env
  117. healthcheck:
  118. test: [ "CMD", "curl", "http://localhost:1235/actuator/health" ]
  119. interval: 30s
  120. timeout: 5s
  121. retries: 3
  122. depends_on:
  123. dolphinscheduler-schema-initializer:
  124. condition: service_completed_successfully
  125. dolphinscheduler-zookeeper:
  126. condition: service_healthy
  127. volumes:
  128. - dolphinscheduler-worker-data:/tmp/dolphinscheduler
  129. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  130. - dolphinscheduler-shared-local:/opt/soft
  131. - dolphinscheduler-resource-local:/dolphinscheduler
  132. networks:
  133. - dolphinscheduler
  134. dolphinscheduler-python-gateway:
  135. image: ${HUB}/dolphinscheduler-python-gateway:${TAG}
  136. ports:
  137. - "54321:54321"
  138. - "25333:25333"
  139. env_file: .env
  140. healthcheck:
  141. test: [ "CMD", "curl", "http://localhost:54321/actuator/health" ]
  142. interval: 30s
  143. timeout: 5s
  144. retries: 3
  145. depends_on:
  146. dolphinscheduler-schema-initializer:
  147. condition: service_completed_successfully
  148. dolphinscheduler-zookeeper:
  149. condition: service_healthy
  150. volumes:
  151. - dolphinscheduler-logs:/opt/dolphinscheduler/logs
  152. - dolphinscheduler-shared-local:/opt/soft
  153. - dolphinscheduler-resource-local:/dolphinscheduler
  154. networks:
  155. - dolphinscheduler
  156. networks:
  157. dolphinscheduler:
  158. driver: bridge
  159. volumes:
  160. dolphinscheduler-postgresql:
  161. dolphinscheduler-zookeeper:
  162. dolphinscheduler-worker-data:
  163. dolphinscheduler-logs:
  164. dolphinscheduler-shared-local:
  165. dolphinscheduler-resource-local: