参考资料
- Canal Admin QuickStart : Canal Admin QuickStart
- Canal Admin Guide : Canal Admin Guide
- Canal Admin ServerGuide : Canal Admin ServerGuide
canal-admin Dockerfile文件:https://github.com/alibaba/canal/blob/master/docker/Dockerfile_admin 注意点:
- 和canal-server共享了基础镜像,可参考: Docker QuickStart
-
访问docker hub获取最新的版本 访问:https://hub.docker.com/r/canal/canal-admin/tags/
-
下载对应的版本,本例使用 1.1.6 版本 1.1.7 版本有点问题
命令:docker pull canal/canal-admin:v1.1.6
docker目录下自带了一个run_admin.sh脚本: https://github.com/alibaba/canal/blob/master/docker/run_admin.sh
如果要指定版本运行,可以编辑脚本文件,指定版本
实际运行的例子:
# 下载脚本 wget https://raw.githubusercontent.com/alibaba/canal/master/docker/run_admin.sh # 以8089端口启动canal-admin sh run_admin.sh -e server.port=8089 \ -e canal.adminUser=admin \ -e canal.adminPasswd=admin # 指定外部的mysql作为admin的库 sh run_admin.sh -e server.port=8089 \ -e spring.datasource.address=xxx \ -e spring.datasource.database=xx \ -e spring.datasource.username=xx -e spring.datasource.password=xx
注意点:
- -e参数里可以指定以前application.yml里所有配置的key和value,springboot启动时会读取-e指定的变量
看到successful之后,就代表canal-admin启动成功,可以访问 http://127.0.0.1:8089/ ,默认账号密码: admin/123456
实测docker启动命令:
canal-admin部署命令: docker run -d --name canal-admin --restart always -p 8089:8089 -e server.port=8089 -e spring.datasource.address=127.0.0.1:3306 -e spring.datasource.database=canal_manager -e spring.datasource.username=root -e spring.datasource.password=123456 -m 512m canal/canal-admin:v1.1.6
首先请参考:Canal-Server的Docker启动方式 Docker-QuickStart
拉取镜像命令:docker pull canal/canal-server:v1.1.6
# 下载脚本 如果要指定版本运行,可以编辑脚本文件,指定版本 wget https://raw.githubusercontent.com/alibaba/canal/master/docker/run.sh # 以单机模式启动 run.sh -e canal.admin.manager=127.0.0.1:8089 \ -e canal.admin.port=11110 \ -e canal.admin.user=admin \ -e canal.admin.passwd=4ACFE3202A5FF5CF467898FC58AAB1D615029441 # 自动加入test集群 run.sh -e canal.admin.manager=127.0.0.1:8089 \ -e canal.admin.port=11110 \ -e canal.admin.user=admin \ -e canal.admin.passwd=4ACFE3202A5FF5CF467898FC58AAB1D615029441 -e canal.admin.register.cluster=test
注意点:
- canal.admin.manager 代表需要链接的canal-admin地址
- canal.admin.user/passwd/port 请参考canal-admin的配置指导文档
- canal.admin.register.cluster 表示默认注册的集群
看到successful之后,就代表canal-server启动成功,然后就可以在canal-admin上进行任务分配了
实测docker启动命令:
docker run -d --name canal-server --restart always -p 11110:11110 -e canal.register.ip=192.168.1.174 -e canal.admin.manager=192.168.1.174:8089 -e canal.admin.port=11110 -e canal.admin.user=admin -e canal.admin.passwd=4ACFE3202A5FF5CF467898FC58AAB1D615029441 -e canal.admin.register.cluster=canal-test -m 2048m canal/canal-server:v1.1.6