
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
运行https://github.com/apache/kafka/%E7%9A%84%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%EF%BC%8C%E6%94%AF%E6%8C%81%E5%88%86%E5%B8%83%E5%BC%8F%E6%A8%A1%E5%BC%8F%E3%80%82%E9%95%9C%E5%83%8F%E4%B8%AD%E5%8C%85%E5%90%AB%E7%9A%84Kafka%E5%8F%91%E8%A1%8C%E7%89%88%E7%9B%B4%E6%8E%A5%E5%9F%BA%E4%BA%8Ehttps://github.com/apache/kafka/%E6%9E%84%E5%BB%BA%E3%80%82
该Kafka Connect容器镜像基于https://hub.docker.com/repository/docker/ueisele/apache-kafka-connect-base%EF%BC%8C%E5%86%85%E7%BD%AEConfluent Hub Cli及额外的Kafka Connect插件。
容器镜像可在Docker Hub仓库https://hub.docker.com/repository/docker/ueisele/apache-kafka-connect%E8%8E%B7%E5%8F%96%EF%BC%8C%E9%95%9C%E5%83%8F%E6%BA%90%E7%A0%81%E6%96%87%E4%BB%B6%E4%BD%8D%E4%BA%8EGitLab%E4%BB%93%E5%BA%93ueisele/kafka-images%E3%80%82
RELEASE构建的最新标签:
3.5.0, 3.5.0-zulu20, 3.5.0-zulu20.0.1, 3.5.0-zulu20-alma9.2, 3.5.0-zulu20.0.1-alma9.2-202305123.4.1, 3.4.1-zulu17, 3.4.1-zulu17.0.7, 3.4.1-zulu17-alma9.2, 3.4.1-zulu17.0.7-alma9.2-20230512SNAPSHOT构建的最新标签:
3.6.0-SNAPSHOT, 3.6.0-SNAPSHOT-zulu20, 3.6.0-SNAPSHOT-zulu20.0.1, 3.6.0-SNAPSHOT-zulu20-alma9.2, 3.6.0-SNAPSHOT-zulu20.0.1-alma9.2-20230512此外,还会发布带有Apache Kafka发行版构建关联Git-Sha的标签,例如ueisele/apache-kafka-connect:3.6.0-SNAPSHOT-g09e8adb。
容器镜像基于https://hub.docker.com/repository/docker/ueisele/zulu-openjdk-micro%EF%BC%88%E5%B7%B2%E5%AE%89%E8%A3%85JRE%EF%BC%8C%E5%A6%8220-jre%EF%BC%89%E6%9E%84%E5%BB%BA%E3%80%82
该OpenJDK镜像又基于https://hub.docker.com/r/almalinux/9-micro%E3%80%82
OpenJDK使用Azul Zulu,其构建经过全面测试且符合TCK标准。
以下是运行Apache Kafka Connect的简单示例。
首先创建容器网络:
bashpodman network create quickstart-kafka-connect
启动单个Kafka实例:
bashpodman run -d --name kafka --net quickstart-kafka-connect -p 9092:9092 ueisele/apache-kafka-server-standalone:3.5.0
运行单个Apache Kafka Connect实例:
bashpodman run -d --name kafka-connect --net quickstart-kafka-connect -p 8083:8083 \ -e CONNECT_BOOTSTRAP_SERVERS=kafka:9092 \ -e CONNECT_REST_ADVERTISED_HOST_NAME=localhost \ -e CONNECT_REST_PORT=8083 \ -e CONNECT_GROUP_ID=quickstart-kafka-connect \ -e CONNECT_CONFIG_STORAGE_TOPIC=quickstart-kafka-connect-config \ -e CONNECT_OFFSET_STORAGE_TOPIC=quickstart-kafka-connect-offsets \ -e CONNECT_STATUS_STORAGE_TOPIC=quickstart-kafka-connect-status \ -e CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR=1 \ -e CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR=1 \ -e CONNECT_STATUS_STORAGE_REPLICATION_FACTOR=1 \ -e CONNECT_KEY_CONVERTER=org.apache.kafka.connect.json.JsonConverter \ -e CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE=false \ -e CONNECT_VALUE_CONVERTER=org.apache.kafka.connect.json.JsonConverter \ -e CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE=false \ ueisele/apache-kafka-connect:3.5.0
更多示例见examples/connect-standalone/:
对于Apache Kafka Connect镜像(https://hub.docker.com/repository/registry-1.docker.io/ueisele/apache-kafka-connect/)%EF%BC%8C%E9%9C%80%E5%B0%86Apache Kafka Connect配置属性按以下规则转换为环境变量:
CONNECT_配置与Confluent Docker镜像完全兼容。
配置机制支持环境变量值使用Go Template。模板由https://github.com/ueisele/go-docker-utils%E5%A4%84%E7%90%86%EF%BC%8C%E5%9B%A0%E6%AD%A4%E6%94%AF%E6%8C%81%E5%85%B6https://github.com/ueisele/go-docker-utils#template-functions%E3%80%82
示例:使用ipAddress函数获取第一个网络接口的IPv4地址:
propertiesCONNECT_REST_ADVERTISED_HOST_NAME="{{ ipAddress \"prefer\" \"ipv4\" 0 }}"
最小化工作器配置要求:
CONNECT_BOOTSTRAP_SERVERS:Kafka引导服务器CONNECT_KEY_CONVERTER和CONNECT_VALUE_CONVERTER:键和值的转换器CONNECT_GROUP_ID:标识工作器所属的Connect集群组CONNECT_CONFIG_STORAGE_TOPIC、CONNECT_OFFSET_STORAGE_TOPIC、CONNECT_STATUS_STORAGE_TOPIC:存储连接器任务、配置、偏移量和状态更新的主题名称,每个Connect集群需唯一CONNECT_REST_ADVERTISED_HOST_NAME:提供给其他工作器连接的主机名,需所有容器可解析可通过以下环境变量调整日志配置:
CONNECT_LOG4J_PATTERN:日志格式(默认:[%d] (%t) %p %m (%c)%n)CONNECT_LOG4J_ROOT_LOGLEVEL:根日志级别(默认:INFO)CONNECT_LOG4J_LOGGERS:逗号分隔的日志器与级别键值对(默认:org.reflections=ERROR,org.apache.zookeeper=ERROR,org.I0Itec.zkclient=ERROR)通过以下环境变量启用远程JMX:
propertiesKAFKA_JMX_PORT=6001 KAFKA_JMX_HOSTNAME=localhost
调试Kafka Connect需设置:
propertiesKAFKA_DEBUG=y
可通过以下环境变量配置调试行为:
propertiesJAVA_DEBUG_PORT=5005 DEBUG_SUSPEND_FLAG=y
可通过多阶段构建安装插件,示例见connect/Containerfile。
如需直接在镜像中安装插件,可使用https://hub.docker.com/repository/docker/ueisele/apache-kafka-connect-dev%E3%80%82
镜像预装以下插件以简化Confluent Schema Registry使用:
同时预装Confluent Connect SMTs:
如需创建自定义Apache Kafka Connect容器镜像,克隆ueisele/kafka-image Git仓库并运行构建命令:
bashgit clone https://gitlab.com/ueisele/kafka-images.git cd kafka-images connect/build.sh --build --tag 3.5.0 --openjdk-release 20
指定OpenJDK版本构建:
bashconnect/build.sh --build --tag 3.5.0 --openjdk-release 20 --openjdk-version 20.0.1
默认Apache Kafka 3.0.0不支持Java 17,如需使用Java 17构建,需用patch/3.0.0-openjdk17.patch补丁Gradle配置:
bashconnect/build.sh --build --tag 3.0.0 --openjdk-release 17 --patch 3.0.0-openjdk17.patch
构建Apache Kafka 3.5.0最新SNAPSHOT(Java 17):
bashconnect/build.sh --build --branch trunk --openjdk-release 17
connect/build.sh脚本支持以下选项:
Usage: connect/build.sh [--build] [--push] [--registry docker.io] [--user ueisele] [--archs amd64,arm64] [--github-repo apache/kafka] [--commit-sha 09e8adb] [--tag 3.5.0] [--branch trunk] [--pull-request 9999] [--openjdk-release 20] [--openjdk-version a20.0.1] [--patch 3.0.0-openjdk17.patch]
容器镜像基于Apache 2许可证授权。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务