kettle从入门到精通 第109课 ETL之kettle, kettle docker 镜像制作&容器部署
场景:kettle专业3群有小伙伴咨询kettle docker镜像部署的事情,今天项目上线后回家么事,一起来盘这个问题。
此docker镜像,我会放到专业群的共享连接里面,有需要的可以自取。

1、编写Dockerfile
编写Dockerfile,可以借助AI工具来生成,大致逻辑如下:
1)基于centos:7 镜像
2)安装jdk8
3)安装openssh-server(可选)
4)设置JAVA_HOME
5)复制 data-integration 文件夹到容器中,这里基于kettle9.4
6)设置 Kettle 环境变量,KETTLE_HOME
7)安装 webkitgtk 和 GTK 相关库(具体看镜像是否包含)
8)暴露 SSH 端口和 Carte 服务端口
9)定义挂载点
10)启动carte服务
2、打镜像,命令如下
docker build --network host -t centos-ssh-kettle-jdk8:latest .

3、启动镜像
1)启动server1
docker run -d -p 2222:22 -p 8081:8080 --name centos-kettle-jdk8-8081 -v /Users/zhangjin/Documents/kettle/pdi/dockerkettle/logs:/opt/data-integration/logs -v /Users/zhangjin/Documents/kettle/pdi/dockerkettle/.kettle:/opt/data-integration/.kettle centos-ssh-kettle-jdk8:latest
2)启动server2
docker run -d -p 2223:22 -p 8082:8080 --name centos-kettle-jdk8-8082 -v /Users/zhangjin/Documents/kettle/pdi/dockerkettle/logs:/opt/data-integration/logs -v /Users/zhangjin/Documents/kettle/pdi/dockerkettle/.kettle:/opt/data-integration/.kettle centos-ssh-kettle-jdk8:latest

4、ssh登录容器centos服务器
1)telnet 2222端口访问服务器

2)ssh 登录
若提示以下错误,使用命令 rm ~/.ssh/known_hosts 清除缓存

清理完重新登录即可

5、访问容器内carte服务
1)访问server1服务

2)访问server2服务

写在最后
此docker镜像,我会放到专业群的共享连接里面,有需要的可以自取。
浙公网安备 33010602011771号