diff --git a/Docker-QuickStart.md b/Docker-QuickStart.md index 921455d..03017a5 100644 --- a/Docker-QuickStart.md +++ b/Docker-QuickStart.md @@ -1,3 +1,18 @@ +# 参考资料 + +* QuickStart : [https://github.com/alibaba/canal/wiki/QuickStart](https://github.com/alibaba/canal/wiki/QuickStart) +* AdminGuide : [https://github.com/alibaba/canal/wiki/AdminGuide](https://github.com/alibaba/canal/wiki/AdminGuide) + +# Dockerfile + +Dockerfile文件:[https://github.com/alibaba/canal/blob/master/docker/Dockerfile](https://github.com/alibaba/canal/blob/master/docker/Dockerfile) +注意点: +* 基于centos6.7最小镜像进行构建,安装一些必须的工具,比如tar/dstat/nc/man等,大概400MB +* 默认安装jdk 1.8,build.sh脚本里会自动下载jdk然后copy到docker里,大概400MB +* 自带日志清理脚本,会识别硬盘超过80%时,自动清理 + +因此,canal整个docker镜像在900MB左右,有一定的优化空间,比如使用jre、减少一些非必须的命令等 + # 获取Docker ## 远程拉取 @@ -11,10 +26,10 @@ docker pull canal/canal-server git clone git@github.com:alibaba/canal.git cd canal/docker && sh build.sh ``` - + # 启动Docker -docker目录下自带了一个run.sh脚本 +docker目录下自带了一个run.sh脚本: [https://github.com/alibaba/canal/blob/master/docker/run.sh](https://github.com/alibaba/canal/blob/master/docker/run.sh) ```plain sh run.sh Usage: @@ -32,6 +47,9 @@ example: 实际运行的例子: ```plain +# 下载脚本 +wget https://raw.githubusercontent.com/alibaba/canal/master/docker/run.sh + # 构建一个destination name为test的队列 sh run.sh -e canal.auto.scan=false \ -e canal.destinations=test \ @@ -44,7 +62,7 @@ sh run.sh -e canal.auto.scan=false \ ``` 注意点: -* -e参数里可以指定以前canal.properties/instance.properties里的所有配置的key和value,canal-server启动时会有限读取-e指定的变量 +* -e参数里可以指定以前canal.properties/instance.properties里的所有配置的key和value,canal-server启动时会有限读取-e指定的变量,具体可参考[AdminGuide](AdminGuide) * docker模式下,单docker实例只能运行一个instance,主要为配置问题。如果需要运行多instance时,可以自行制作一份docker镜像即可 ## 运行效果 @@ -53,3 +71,4 @@ sh run.sh -e canal.auto.scan=false \ ![image.png | left | 747x332](https://cdn.nlark.com/lark/0/2018/png/5565/1533349043367-4b756659-2a9b-440f-8969-c27f21a1bfbf.png "") +看到successful之后,就代表canal-server启动成功,可以启动canal-client链接上来进行binlog订阅了