docker-compose安装canal

 一、先安装好docker和docker-compose插入,本人已安装,此处省略

二、修改mysql的my.cnf配置文件

更改内容如下:

# 开启 binlog
log-bin=mysql-bin 
# 选择 ROW 模式
binlog-format=ROW 
# 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复 默认是1
server_id=1 

本人的MySQL是通过宝塔安装,更改配置如下:

 

 三、新建文件夹

mkdir /usr/local/dockercompose/canal/conf
mkdir /usr/local/dockercompose/canal/logs
mkdir /usr/local/dockercompose/canal

四、关闭防火墙或者打开防火墙端口

建议大家开放端口,不要直接关闭防火墙

11111 canal端口
11112 canal内部端口
3306 MySQL端口
9876 rocketMQ端口

 

 五、上传docker-compose至文件夹/usr/local/dockercompose/canal

docker-compose.yml文件

version: '3.0'

services:
  canal-server:
    image: canal/canal-server:v1.1.5
    container_name: canal-server
    ports:
    #canal默认端口号
      - 11111:11111
    environment:
    #设置从库id,不能与主库id相冲突
      - canal.instance.mysql.slaveId=222
      - canal.instance.master.address=数据库地址:3306
      # mysql 复制账号
      - canal.instance.dbUsername=数据登录名
      - canal.instance.dbPassword=数据库登录密码
      - canal.mq.topic=loginLogCanalTopic
      #数据库名.表名
      - canal.instance.filter.regex=cyb-sp.login_log
    volumes:
      - $PWD/conf/:/usr/local/dockercompose/canal/conf/
      - $PWD/logs/:/usr/local/dockercompose/canal/logs/

在该目录下运行docker-compose up -d 进行后台运行,启动成功后查询如下:

 五、验证

更改cyb-sp.login_log表中的任意一条数据,更改保存后查看对应的rockerMQ控制面板,如果驾驶舱有topic消息或者主题中存在设置的topic则说明安装成功,如下所示:

 

 

 

 

 

出现以上效果canal就安装成功。

 

posted @ 2022-04-24 23:06  陈远波  阅读(2348)  评论(0编辑  收藏  举报