参考文档:https://github.com/apache/dolphinscheduler/tree/3.1.7-release
https://dolphinscheduler.apache.org/zh-cn/docs/3.1.7/guide/start/docker
Dockerfile
FROM openjdk:8u342-jdk
#设置环境变量
ENV JAVA_HOME="/usr/local/openjdk-8/"
ENV DOCKER true
ENV TZ Asia/Shanghai
# 将软件添加到镜像中
ADD ./apache-dolphinscheduler-3.1.7-bin.tar.gz /opt/
#
# 安装必要的软件包
RUN apt update && \
apt install -y sudo && \
rm -rf /var/lib/apt/lists/*
# 修改时间时区
RUN sed -i 's/time-zone: UTC/time-zone: GMT+8/g' \
/opt/apache-dolphinscheduler-3.1.7-bin/standalone-server/conf/application.yaml \
/opt/apache-dolphinscheduler-3.1.7-bin/alert-server/conf/application.yaml \
/opt/apache-dolphinscheduler-3.1.7-bin/api-server/conf/application.yaml \
/opt/apache-dolphinscheduler-3.1.7-bin/master-server/conf/application.yaml \
/opt/apache-dolphinscheduler-3.1.7-bin/worker-server/conf/application.yaml
# 复制 MySQL Connector JAR 文件到指定位置
COPY ./mysql-connector-java-8.0.28.jar \
/opt/apache-dolphinscheduler-3.1.7-bin/{standalone-server/libs/standalone-server/,tools/libs/}mysql-connector-java-8.0.28.jar
COPY ./dolphinscheduler_env.sh /opt/apache-dolphinscheduler-3.1.7-bin/bin/env/dolphinscheduler_env.sh
# 修改脚本权限并执行升级脚本
RUN chmod 755 /opt/apache-dolphinscheduler-3.1.7-bin/tools/bin/upgrade-schema.sh && chmod 755 /opt/apache-dolphinscheduler-3.1.7-bin/bin/dolphinscheduler-daemon.sh
WORKDIR /opt/apache-dolphinscheduler-3.1.7-bin/bin
# 暴露端口
EXPOSE 12345 25333
# 启动 Dolphinscheduler
CMD ./dolphinscheduler-daemon.sh start standalone-server && tail -f /dev/null
docker build -t dolphinscheduler-standalone-server:3.1.7 -f /opt/dockerfile/dolphinscheduler/Dockerfile .
docker tag dolphinscheduler-standalone-server:3.1.7 192.168.1.249:16443/bigdata/dolphinscheduler-standalone-server:3.1.7
docker push 192.168.1.249:16443/bigdata/dolphinscheduler-standalone-server:3.1.7
docker save -o dolphinscheduler-standalone-server.tar dolphinscheduler-standalone-server:3.1.7
docker load -i /opt/dockerinstall/dolphinscheduler/dolphinscheduler-standalone-server.tar
启动命令:
docker run --name dolphinscheduler-standalone-server -p 12345:12345 -p 25333:25333 -d apache/dolphinscheduler-standalone-server:"${DOLPHINSCHEDULER_VERSION}"
启动命令:
docker run -d --name dolphinscheduler-standalone-server \
-e DATABASE="mysql" \
-e SPRING_DATASOURCE_URL="jdbc:mysql://192.168.1.245:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai" \
-e SPRING_DATASOURCE_USERNAME="dolphin" \
-e SPRING_DATASOURCE_PASSWORD="dolphin" \
-e export SPRING_JACKSON_TIME_ZONE="GMT+8" \
--net host \
-p 12345:12345 -p 25333:25333 \
-d apache/dolphinscheduler-standalone-server:dolphinscheduler-standalone-server:3.1.7