You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker环境下Debezium同步Postgres到Kafka失败求助

问题解决步骤

1. 修复命令拼写错误

你执行的kafkacat命令中,Schema Registry的主机名存在拼写错误:schema-regisrty应为schema-registry(缺失字母t)。修正后的命令如下:

docker run --tty --network pythonproject5_default confluentinc/cp-kafkacat kafkacat -b kafka:9092 -C -s key=s -s value=avro -r http://schema-registry:8081 -t postgres.public.users

2. 后续排查要点(若修正后仍报错)

  • 检查Schema Registry服务状态:在Docker Compose目录下执行docker-compose ps,确认schema-registry服务处于Up运行状态。
  • 验证网络连通性:进入临时容器测试与Schema Registry的连通性:
    docker run --rm --network pythonproject5_default confluentinc/cp-kafkacat curl http://schema-registry:8081/subjects
    
    若返回主题列表则网络正常;若仍无法解析主机,检查Docker Compose中Schema Registry的服务名是否确实为schema-registry。
  • 核对Debezium连接器配置:确保连接器配置中指定了正确的Avro转换参数:
    • value.converter=io.confluent.connect.avro.AvroConverter
    • value.converter.schema.registry.url=http://schema-registry:8081
  • 确认消息格式:先用无Avro解析的命令查看原始消息,验证是否为Schema Registry管理的Avro格式:
    docker run --tty --network pythonproject5_default confluentinc/cp-kafkacat kafkacat -b kafka:9092 -C -t postgres.public.users -o beginning
    
    若消息为带Schema ID前缀的二进制数据则格式正确;若为纯JSON,说明连接器未配置Avro转换。

内容的提问来源于stack exchange,提问作者George Rybojchuk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 19:45:50