confluentinc/cp-kafka-connectConfluent Kafka Connect Docker 镜像是用于部署和运行 Kafka Connect 的官方容器镜像。
注意:cp-kafka-connect 与 cp-kafka-connect-base 镜像功能完全一致。在 Confluent Platform 6.0 之前,cp-kafka-connect 镜像预装了多个连接器,目前该特性已移除,两者无差异。
Kafka Connect 是 Apache Kafka 的组件,用于将外部系统与 Kafka 集群集成,支持数据导入(Source Connector)和导出(Sink Connector),无需编写自定义代码即可实现数据流转。更多信息参见 官方文档。
Kafka Connect 依赖插件(如连接器 JAR 包)实现功能扩展,需手动安装插件至镜像。以下是三种常用安装方式:
通过 Dockerfile 基于基础镜像构建新镜像,将连接器 JAR 包直接打包进镜像。
示例:
dockerfileFROM confluentinc/cp-kafka-connect:latest RUN confluent-hub install --no-prompt confluentinc/kafka-connect-jdbc:latest
通过挂载宿主机目录的方式,将连接器 JAR 包映射到容器内的插件目录(默认插件路径:/usr/share/java/)。
示例(docker-compose 配置片段):
yamlvolumes: - ./connectors/jdbc:/usr/share/java/kafka-connect-jdbc - ./connectors/elasticsearch:/usr/share/java/kafka-connect-elasticsearch
在容器启动时通过命令行安装连接器(需确保容器内网络可访问 Confluent Hub)。
示例(docker-compose 配置片段):
yamlenvironment: - CONNECT_PLUGIN_PATH=/usr/share/java,/usr/share/confluent-hub-components command: - bash - -c - | confluent-hub install --no-prompt confluentinc/kafka-connect-jdbc:latest confluent-hub install --no-prompt confluentinc/kafka-connect-elasticsearch:latest /etc/confluent/docker/run
Kafka Connect 配置需通过环境变量或配置文件定义,详细参数参见 官方配置参考。核心配置项包括:
bootstrap.servers(Kafka 集群地址)、group.id(Connect 集群组 ID)。key.converter/value.converter(键/值转换器,如 org.apache.kafka.connect.json.JsonConverter)、offset.storage.topic(偏移量存储主题)等。yamlversion: '3' services: kafka-connect: image: confluentinc/cp-kafka-connect:latest depends_on: - kafka environment: - BOOTSTRAP_SERVERS=kafka:9092 - GROUP_ID=connect-cluster - KEY_CONVERTER=org.apache.kafka.connect.json.JsonConverter - VALUE_CONVERTER=org.apache.kafka.connect.json.JsonConverter - OFFSET_STORAGE_TOPIC=connect-offsets volumes: # 挂载宿主机连接器 JAR 目录至容器插件路径 - ./local-connectors:/usr/share/java/kafka-connect-custom
yamlversion: '3' services: kafka-connect: image: confluentinc/cp-kafka-connect:latest depends_on: - kafka environment: - BOOTSTRAP_SERVERS=kafka:9092 - GROUP_ID=connect-cluster - CONNECT_PLUGIN_PATH=/usr/share/java,/usr/share/confluent-hub-components command: - bash - -c - | # 安装 PostgreSQL 连接器 confluent-hub install --no-prompt confluentinc/kafka-connect-jdbc:latest # 启动 Kafka Connect /etc/confluent/docker/run
使用本镜像需遵守镜像包含软件的许可条款。详见 Confluent Docker 镜像许可说明。扩展和构建自定义镜像的软件基于 Apache 2.0 许可证开源。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务