|
@@ -0,0 +1,253 @@
|
|
|
+# Licensed to the Apache Software Foundation (ASF) under one
|
|
|
+# or more contributor license agreements. See the NOTICE file
|
|
|
+# distributed with this work for additional information
|
|
|
+# regarding copyright ownership. The ASF licenses this file
|
|
|
+# to you under the Apache License, Version 2.0 (the
|
|
|
+# "License"); you may not use this file except in compliance
|
|
|
+# with the License. You may obtain a copy of the License at
|
|
|
+#
|
|
|
+# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
+#
|
|
|
+# Unless required by applicable law or agreed to in writing, software
|
|
|
+# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
+# See the License for the specific language governing permissions and
|
|
|
+# limitations under the License.
|
|
|
+
|
|
|
+version: "3"
|
|
|
+
|
|
|
+networks:
|
|
|
+ dolphinscheduler-postgresql:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-zookeeper:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-api:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-frontend:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-alert:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-master:
|
|
|
+ driver: bridge
|
|
|
+ dolphinscheduler-worker:
|
|
|
+ driver: bridge
|
|
|
+
|
|
|
+volumes:
|
|
|
+ dolphinscheduler-postgresql:
|
|
|
+ dolphinscheduler-zookeeper:
|
|
|
+ dolphinscheduler-api:
|
|
|
+ dolphinscheduler-frontend:
|
|
|
+ dolphinscheduler-alert:
|
|
|
+ dolphinscheduler-master:
|
|
|
+ dolphinscheduler-worker-data:
|
|
|
+ dolphinscheduler-worker-logs:
|
|
|
+ dolphinscheduler-worker-task-env:
|
|
|
+
|
|
|
+services:
|
|
|
+
|
|
|
+ dolphinscheduler-postgresql:
|
|
|
+ image: bitnami/postgresql:latest
|
|
|
+ container_name: dolphinscheduler-postgresql
|
|
|
+ ports:
|
|
|
+ - 5432:5432
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ POSTGRESQL_USERNAME: root
|
|
|
+ POSTGRESQL_PASSWORD: root
|
|
|
+ POSTGRESQL_DATABASE: dolphinscheduler
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD", "pg_isready", "-U", "${POSTGRESQL_USERNAME}", "-d", "{POSTGRESQL_PASSWORD}", "-h", "localhost", "5432"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-postgresql:/bitnami/postgresql
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+
|
|
|
+ dolphinscheduler-zookeeper:
|
|
|
+ image: bitnami/zookeeper:latest
|
|
|
+ container_name: dolphinscheduler-zookeeper
|
|
|
+ ports:
|
|
|
+ - 2181:2181
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ ALLOW_ANONYMOUS_LOGIN: "yes"
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD-SHELL", "nc -z localhost 2181"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-zookeeper:/bitnami/zookeeper
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+
|
|
|
+ dolphinscheduler-api:
|
|
|
+ image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
|
|
|
+ container_name: dolphinscheduler-api
|
|
|
+ command: ["api-server"]
|
|
|
+ ports:
|
|
|
+ - 12345:12345
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ POSTGRESQL_HOST: dolphinscheduler-postgresql
|
|
|
+ POSTGRESQL_PORT: 5432
|
|
|
+ POSTGRESQL_USERNAME: root
|
|
|
+ POSTGRESQL_PASSWORD: root
|
|
|
+ POSTGRESQL_DATABASE: dolphinscheduler
|
|
|
+ ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD-SHELL", "curl -f http://localhost:12345"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ depends_on:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-api:/opt/dolphinscheduler/logs
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-api
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+
|
|
|
+ dolphinscheduler-frontend:
|
|
|
+ image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
|
|
|
+ container_name: dolphinscheduler-frontend
|
|
|
+ command: ["frontend"]
|
|
|
+ ports:
|
|
|
+ - 8888:8888
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ FRONTEND_API_SERVER_HOST: dolphinscheduler-api
|
|
|
+ FRONTEND_API_SERVER_PORT: 12345
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD-SHELL", "curl -f http://localhost:8888"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ depends_on:
|
|
|
+ - dolphinscheduler-api
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-frontend:/var/log/nginx
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-api
|
|
|
+
|
|
|
+ dolphinscheduler-alert:
|
|
|
+ image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
|
|
|
+ container_name: dolphinscheduler-alert
|
|
|
+ command: ["alert-server"]
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ XLS_FILE_PATH: "/tmp/xls"
|
|
|
+ MAIL_SERVER_HOST: ""
|
|
|
+ MAIL_SERVER_PORT: ""
|
|
|
+ MAIL_SENDER: ""
|
|
|
+ MAIL_USER: ""
|
|
|
+ MAIL_PASSWD: ""
|
|
|
+ MAIL_SMTP_STARTTLS_ENABLE: "false"
|
|
|
+ MAIL_SMTP_SSL_ENABLE: "false"
|
|
|
+ MAIL_SMTP_SSL_TRUST: ""
|
|
|
+ ENTERPRISE_WECHAT_ENABLE: "false"
|
|
|
+ ENTERPRISE_WECHAT_CORP_ID: ""
|
|
|
+ ENTERPRISE_WECHAT_SECRET: ""
|
|
|
+ ENTERPRISE_WECHAT_AGENT_ID: ""
|
|
|
+ ENTERPRISE_WECHAT_USERS: ""
|
|
|
+ POSTGRESQL_HOST: dolphinscheduler-postgresql
|
|
|
+ POSTGRESQL_PORT: 5432
|
|
|
+ POSTGRESQL_USERNAME: root
|
|
|
+ POSTGRESQL_PASSWORD: root
|
|
|
+ POSTGRESQL_DATABASE: dolphinscheduler
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD", "/root/checkpoint.sh", "AlertServer"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ depends_on:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-alert:/opt/dolphinscheduler/logs
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-alert
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+
|
|
|
+ dolphinscheduler-master:
|
|
|
+ image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
|
|
|
+ container_name: dolphinscheduler-master
|
|
|
+ command: ["master-server"]
|
|
|
+ ports:
|
|
|
+ - 5678:5678
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ MASTER_EXEC_THREADS: "100"
|
|
|
+ MASTER_EXEC_TASK_NUM: "20"
|
|
|
+ MASTER_HEARTBEAT_INTERVAL: "10"
|
|
|
+ MASTER_TASK_COMMIT_RETRYTIMES: "5"
|
|
|
+ MASTER_TASK_COMMIT_INTERVAL: "1000"
|
|
|
+ MASTER_MAX_CPULOAD_AVG: "100"
|
|
|
+ MASTER_RESERVED_MEMORY: "0.1"
|
|
|
+ POSTGRESQL_HOST: dolphinscheduler-postgresql
|
|
|
+ POSTGRESQL_PORT: 5432
|
|
|
+ POSTGRESQL_USERNAME: root
|
|
|
+ POSTGRESQL_PASSWORD: root
|
|
|
+ POSTGRESQL_DATABASE: dolphinscheduler
|
|
|
+ ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD", "/root/checkpoint.sh", "MasterServer"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ depends_on:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-master:/opt/dolphinscheduler/logs
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+
|
|
|
+ dolphinscheduler-worker:
|
|
|
+ image: registry.cn-qingdao.aliyuncs.com/sxyj/dolphinscheduler:1.2.1
|
|
|
+ container_name: dolphinscheduler-worker
|
|
|
+ command: ["worker-server"]
|
|
|
+ ports:
|
|
|
+ - 1234:1234
|
|
|
+ - 50051:50051
|
|
|
+ environment:
|
|
|
+ TZ: Asia/Shanghai
|
|
|
+ WORKER_EXEC_THREADS: "100"
|
|
|
+ WORKER_HEARTBEAT_INTERVAL: "10"
|
|
|
+ WORKER_FETCH_TASK_NUM: "3"
|
|
|
+ WORKER_MAX_CPULOAD_AVG: "100"
|
|
|
+ WORKER_RESERVED_MEMORY: "0.1"
|
|
|
+ WORKER_GROUP: "default"
|
|
|
+ DOLPHINSCHEDULER_DATA_BASEDIR_PATH: "/tmp/dolphinscheduler"
|
|
|
+ POSTGRESQL_HOST: dolphinscheduler-postgresql
|
|
|
+ POSTGRESQL_PORT: 5432
|
|
|
+ POSTGRESQL_USERNAME: root
|
|
|
+ POSTGRESQL_PASSWORD: root
|
|
|
+ POSTGRESQL_DATABASE: dolphinscheduler
|
|
|
+ ZOOKEEPER_QUORUM: dolphinscheduler-zookeeper:2181
|
|
|
+ healthcheck:
|
|
|
+ test: ["CMD", "/root/checkpoint.sh", "WorkerServer"]
|
|
|
+ interval: 30s
|
|
|
+ timeout: 5s
|
|
|
+ retries: 3
|
|
|
+ # start_period: 30s
|
|
|
+ depends_on:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|
|
|
+ volumes:
|
|
|
+ - dolphinscheduler-worker-data:/tmp/dolphinscheduler
|
|
|
+ - dolphinscheduler-worker-logs:/opt/dolphinscheduler/logs
|
|
|
+ - dolphinscheduler-worker-task-env:/opt/dolphinscheduler/conf/env/
|
|
|
+ networks:
|
|
|
+ - dolphinscheduler-postgresql
|
|
|
+ - dolphinscheduler-zookeeper
|