mirror of
https://github.com/alibaba/canal.git
synced 2026-11-04 00:30:15 +08:00
Page:
Docker QuickStart
Pages
AdminGuide
BinlogChange(MariaDB)
BinlogChange(MySQL8)
BinlogChange(mysql5.6)
Canal Admin Docker
Canal Admin Guide
Canal Admin QuickStart
Canal Admin ServerGuide
Canal Kafka QuickStart
Canal Kafka RocketMQ QuickStart
Canal MQ Performance
Client Adapter
ClientAPI
ClientAdapter
ClientExample
DevGuide
DevGuide_ archive20190626
Developer Guide en
Docker QuickStart English Version
Docker QuickStart
FAQ
Home
Introduction
Kafka QuickStart
Performance
Prometheus QuickStart
QuickStart
Sync ES
Sync HBase
Sync RDB
TableMetaTSDB
Zookeeper QuickStart
aliyun RDS QuickStart
canal介绍
常见问题解答
时序表结构方案
测试修改
简介
Clone
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
参考资料
- QuickStart : https://github.com/alibaba/canal/wiki/QuickStart
- AdminGuide : https://github.com/alibaba/canal/wiki/AdminGuide
Dockerfile
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
远程拉取
-
访问docker hub获取最新的版本 访问:https://hub.docker.com/r/canal/canal-server/tags/
-
下载对应的版本,比如最新版为1.1.1
docker pull canal/canal-server:v1.1.1
本地编译
git clone git@github.com:alibaba/canal.git
cd canal/docker && sh build.sh
启动Docker
docker目录下自带了一个run.sh脚本: https://github.com/alibaba/canal/blob/master/docker/run.sh
sh run.sh
Usage:
run.sh [CONFIG]
example:
run.sh -e canal.instance.master.address=127.0.0.1:3306 \
-e canal.instance.dbUsername=canal \
-e canal.instance.dbPassword=canal \
-e canal.instance.connectionCharset=UTF-8 \
-e canal.instance.tsdb.enable=true \
-e canal.instance.gtidon=false \
-e canal.instance.filter.regex=.*\\..*
实际运行的例子:
# 下载脚本
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 \
-e canal.instance.master.address=127.0.0.1:3306 \
-e canal.instance.dbUsername=canal \
-e canal.instance.dbPassword=canal \
-e canal.instance.connectionCharset=UTF-8 \
-e canal.instance.tsdb.enable=true \
-e canal.instance.gtidon=false \
注意点:
- -e参数里可以指定以前canal.properties/instance.properties里的所有配置的key和value,canal-server启动时会有限读取-e指定的变量,具体可参考AdminGuide
- docker模式下,单docker实例只能运行一个instance,主要为配置问题。如果需要运行多instance时,可以自行制作一份docker镜像即可
运行效果
看到successful之后,就代表canal-server启动成功,可以启动canal-client链接上来进行binlog订阅了
Contents 目录
- Home
- Introduction / 简介
- Quick Start
- Client Guide
- Canal Admin
- Canal Performance
- AdminGuide
- DevGuide
- BinlogChange(Mysql5.6)
- BinlogChange(MariaDB)
- BinlogChange(MySQL8)
- TableMetaTSDB
- ReleaseNotes
- Download
- FAQ / 常见问题解答
