docker compose 部署的canal-server、canal-admin,canal-server注册不到canal-admin中,版本 v1.1.7
docker compose 部署的canal-server、canal-admin,canal-server注册不到canal-admin中
镜像版本
canal/canal-server:v1.1.7
canal/canal-admin:v1.1.7
canal-server配置
# canal admin config
canal.admin.manager = canal-admin:8089
canal.admin.port = 11110
canal.admin.user = admin
canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441
# admin auto register
canal.admin.register.auto = true
canal.admin.register.cluster = canal-single-node
canal.admin.register.name =
canal-admin配置
spring.datasource:
address: mysql-8.3.0:3306
database: canal_manager
username: canal
password: canal
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://${spring.datasource.address}/${spring.datasource.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false
hikari:
maximum-pool-size: 30
minimum-idle: 1
canal:
adminUser: admin
adminPasswd: admin
canal-server报错如下
canal_manager库 有 这个 canal这个用户吗
canal_manager库 有 这个 canal这个用户吗
数据库用户吗?有的
需要先在canal-admin中创建名字为canal-single-node的集群,因为配置制定了canal.admin.register.cluster = canal-single-node
或者你的意思是这样?
canal.admin.register.cluster =
canal.admin.register.name = canal-single-node
#Canal Admin 地址及端口(用于定位管理端) canal.admin.manager 需要是canal.admin的宿主机ip地址,不能是docker 容器名|ip!!!!否则会自动注册不进去 canal.admin.manager = 192.168.2.195:8089
docker默认的network不能使用容器名! 需要不是default的network,然后再用容器的名字就可以了!
docker默认的network不能使用容器名! 需要不是default的network,然后再用容器的名字就可以了!
docker-compose用的就是新建的网桥,还是报错,改成宿主机ip地址就可以了
canal.admin.manager: canal_admin:8089 canal-server注册报错(canal-server容器可以ping通canal_admin)
canal.admin.manager: 192.168.2.195:8089 成功自动注册了
` version: '3'
networks: canal: driver: bridge ipam: config: - subnet: 172.18.0.0/16
services:
canal_admin:
image: canal/canal-admin:v1.1.8
container_name: canal_admin
restart: unless-stopped
volumes:
# - "./canal/canal-admin/bin/startup.sh:/home/admin/canal-admin/bin/startup.sh"
- "/opt/docker/canal/canal-admin/logs:/home/admin/canal-admin/logs"
environment:
TZ: Asia/Shanghai
LANG: en_US.UTF-8
canal.adminUser: admin
canal.adminPasswd: 123456
spring.datasource.address: 192.168.2.195:3306
spring.datasource.database: canal_manager
spring.datasource.username: root
spring.datasource.password: root@2020
ports:
- "8089:8089"
networks:
- canal
canal_server:
image: canal/canal-server:v1.1.8
container_name: canal_server
restart: unless-stopped
volumes:
- "/opt/docker/canal/canal-server/conf:/home/admin/canal-server/conf"
- "/opt/docker/canal/canal-server/logs:/home/admin/canal-server/logs"
environment:
TZ: Asia/Shanghai
LANG: en_US.UTF-8
canal.admin.manager: 192.168.2.195:8089
canal.admin.port: 11110
canal.admin.user: admin
canal.admin.passwd: 6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
ports:
- "11110:11110"
- "11111:11111"
- "11112:11112"
depends_on:
- canal_admin
links:
- canal_admin
networks:
- canal
`