本文主要是介绍构建dagu+replicadb镜像,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Dockerfile文件内容
FROM openjdk:8-jre-alpine
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk add --no-cache tzdata bash && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && mkdir -p /opt/dagu/dags && echo '#!/bin/bash' > /usr/local/bin/rundagu && echo 'dagu scheduler 2> /opt/dagu/scheduler.log &' >> /usr/local/bin/rundagu && echo 'dagu server' >> /usr/local/bin/rundagu && chmod 755 /usr/local/bin/rundagu
COPY dagu /usr/local/bin/
COPY replicadb /opt/replicadb/
ENV DAGU_HOME=/opt/dagu
ENV DAGU_HOST=0.0.0.0
ENV DAGU_PORT=8080
ENV DAGU_DAGS=$DAGU_HOME/dags
ENV DAGU_IS_BASICAUTH=1
ENV DAGU_BASICAUTH_USERNAME="admin"
ENV DAGU_BASICAUTH_PASSWORD="admin"
ENV DAGU_LOG_DIR=$DAGU_HOME/logs
ENV DAGU_DATA_DIR=$DAGU_HOME/data
ENV DAGU_SUSPEND_FLAGS_DIR=$DAGU_HOME/suspend
ENV DAGU_ADMIN_LOG_DIR=$DAGU_HOME/logs/admin
ENV DAGU_BASE_CONFIG=$DAGU_HOME/config.yaml
ENV DAGU_NAVBAR_COLOR="#a0aeba"
ENV DAGU_NAVBAR_TITLE="Dagu"
EXPOSE 8080
ENTRYPOINT rundagu
构建
docker build -t dagu-replicadb:v1.12.5 -f Dockerfile .
运行
docker run -it --name dagu -p 8081:8080 --rm dagu-replicadb:v1.12.5
编写测试任务
浏览器访问http://192.168.1.88:8081/
在线编写yaml文件保存并运行(注意缩进)
name: ETL-test1
description: "测试ETL"
schedule: "0 01 * * *"
steps:- name: "测试replicadb1"command: "bash"script: |/opt/replicadb/bin/replicadb --mode=complete -j=1 \--source-connect=jdbc:oracle:thin:@192.168.1.66:1521/ORCLPDB1 \--source-user=TEST1 \--source-password='test1000' \--source-query='SELECT T.ID, T.RYZT, T.RYZTM, T.PX, T1.RYZT RYZT1 FROM JZG_JCSJ_PX T LEFT JOIN JZG_JCSJ_PX T1 ON T.ID=T1.ID' \--sink-connect=jdbc:oracle:thin:@192.168.1.66:1521/ORCLPDB1 \--sink-user=TEST1 \--sink-password='test1000' \--sink-table=TEST_JZG_JCSJ_PX \--sink-columns=ID,RYZT,RYZTM,PX,RYZT1 \--verbose
这篇关于构建dagu+replicadb镜像的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!