构建dagu+replicadb镜像

Dockerfile文件内容

bash 复制代码
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

构建

bash 复制代码
docker build -t dagu-replicadb:v1.12.5 -f Dockerfile .

运行

bash 复制代码
docker run -it --name dagu -p 8081:8080 --rm dagu-replicadb:v1.12.5

编写测试任务

浏览器访问http://192.168.1.88:8081/

在线编写yaml文件保存并运行(注意缩进)

bash 复制代码
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
相关推荐
我不会起名字32212 小时前
Redis 从 0 到 1(九):主库宕机 30 秒自动切主——1 主 2 从 3 哨兵 + Go 客户端
redis·docker·sentinel·高可用·哨兵
姜鱼问生13 小时前
每次开机手动检查 6 样东西?我写了个 2 秒自检脚本
运维·网络·nginx·docker·容器
wangqiaowq13 小时前
PostgresSQL server Docker 安装部署
运维·docker·容器
程序员阿明14 小时前
docker搭建视频流服务go2rtc,webRTC
docker·容器·webrtc
TTATTC14 小时前
让 16 个 AI 员工在飞书群自我协同:基于 OpenClaw 的多 Agent 敏捷 Squad 拓扑与一人公司实操
docker·开源
TTATTC14 小时前
从分片续传到 SPI 插件化扩展:Free-FS 企业级文件系统核心架构与万能预览技术拆解
docker·开源
JavaPub-rodert15 小时前
Docker 容器为什么 stop 半天停不下来?讲透 PID 1、SIGTERM、SIGKILL、僵尸进程与 tini
运维·docker·容器
EterNity_TiMe_20 小时前
Docker服务越装越多记不住端口?我用Fenrus把NAS里的常用入口整理成一个导航页
运维·人工智能·docker·ai·容器·cpolar
吴声子夜歌20 小时前
Docker入门与实战——libnetwork插件化网络功能
网络·docker·容器
江湖有缘20 小时前
Docker实战 | 使用Docker部署HarborGuard容器安全扫描平台
安全·docker·容器