docker canal 踩坑歷程

php迷途小書童發表於2022-11-26

結果

docker canal-admin  canal-server

docker canal-admin  canal-server

可能會爬的坑

  1. canal-server 連線不上資料庫,提示connection refuse。
  2. canal-admin啟動後,啟動canal-server,admin日誌提示 connection refuse。

mac m1 啟動canal-admin

docker run --platform linux/amd64 --name=canal-admin -e server.port=8089 -e canal.adminUser=admin -e canal.adminPasswd=123456 -p 8089:8089  -d canal/canal-admin:v1.1.5

canal-admin預設密碼為admin。但是admin皮膚有個bug,只能6位及以上密碼,所以修改密碼為123456。可是修改密碼後,直接導致了,canal-server啟動後,皮膚不展示啟動的server。
原因是因為,canal-server啟動時:CanalServer和CanalAdmin會透過CanalAdmin的登陸賬號密碼進行雙向授權。所以canal-server啟動時指定的canal.admin.passwd一定是123456加密的密碼。需要進入canal-admin,獲取admin賬號123456的加密密碼,用於啟動canal-server。

docker canal 踩坑歷程

docker canal 踩坑歷程

mac m1 啟動canal-server

docker run --platform linux/amd64 --name canal-server -p 11111:11111 -e canal.destinations=canal-server -e canal.auto.scan=false -e canal.destinations=canal-server -e canal.instance.master.address=192.168.0.102:3306 -e canal.instance.defaultDatabaseName=canal-server -e canal.instance.dbUsername=canal -e canal.instance.dbPassword=canal -e canal.admin.manager=192.168.0.102:8089 -e canal.admin.port=11110 -e canal.admin.user=admin -e canal.admin.passwd=6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 -e canal.instance.connectionCharset=UTF-8 -e canal.instance.tsdb.enable=true -e canal.instance.gtidon=false -d canal/canal-server:v1.1.5

還有一個問題是

啟動時canal-server指定了canal.destinations=canal-server,但是,客戶端依舊提示,canal-server should start first。

解決方案是手動加上

docker canal 踩坑歷程

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章