作者| 陈逸飞
先决条件
使用容器单机部署
port_list=(12345 25333 5432)
for port in ${port_list[@]};do
netstat -an | grep $port
done
# 无任何输出即为端口未被占用
vim docker-compose.yml
dolphinscheduler-api
,修改ports。# 默认内容
ports:
- "12345:12345"
- "25333:25333"
# 根据需求修改,如:
ports:
- "22345:12345"
- "35333:25333"
tar -zxvf apache-dolphinscheduler-<version>-src.tar.gz
cd apache-dolphinscheduler-<version>-src/deploy/docker
# 初始化数据库等
docker-compose --profile schema up -d
# 启动所有服务
docker-compose --profile all up -d
使用容器分布式部署
docker-compose up -d dolphinscheduler-api
使用非容器化的PostgreSQL与Zookeeper
# 进入Deploy目录
cd apache-dolphinscheduler-<version>-src/deploy/docker
vim .env
## 修改以下内容
# 数据库名称
DATABASE=dolp
# 数据库连接地址
SPRING_DATASOURCE_URL=jdbc:postgresql://10.0.8.14:15432/dolp
# Zookeeper连接地址
REGISTRY_ZOOKEEPER_CONNECT_STRING=10.0.8.14:12181
# 连接数据库的用户名
SPRING_DATASOURCE_USERNAME=dolp
# 连接数据库的密码
SPRING_DATASOURCE_PASSWORD=111111
docker-compose --profile schema up -d
# 启动worker服务
docker-compose up -d dolphinscheduler-worker
# 启动master服务
docker-compose up -d dolphinscheduler-master
# 启动alert服务
docker-compose up -d olphinscheduler-alert
# 启动api服务
docker-compose up -d dolphinscheduler-api
让DolphinScheduler元数据库支持MySQL
# 如果用的是默认容器启动的zookeeper和PostgreSQL,会有两条Error,忽略即可
for container_name in `docker ps |grep dolphinscheduler | awk '{print $1}'`;do docker cp ./mysql-connector-java-8.0.16.jar $container_name:/opt/dolphinscheduler/libs;done
docker-compose --profile all restart