我试图在执行 connect-distributed 命令后创建一个 kafka 连接器。我写了一个 entrypoint.sh 脚本并将它与 CMD 一起使用。我有这样的 docker 文件:
FROM confluentinc/cp-kafka
RUN mkdir /plugins
RUN mkdir /config
COPY kafka-connect-couchbase-*.jar /plugins/
COPY config /config/
RUN chmod +x /config/stage/entrypoint.sh
ENV EXPOSED_PORT 8083
CMD /config/stage/entrypoint.sh
Run Code Online (Sandbox Code Playgroud)
我有入口点脚本文件为:
connect-distributed config/"${DEPLOY_ENV}"/connect-distributed.properties
curl -X POST -H "Content-Type: application/json" -d @config.json http://localhost:8083/connectors
Run Code Online (Sandbox Code Playgroud)
deploy_env 无关紧要,它来自 jenkins。config 文件和distributed.properties 也无关紧要,它是正确的,我手动尝试过。
Kafka connect 启动没有问题,但是用于创建连接器的curl命令无效。
简而言之,我想在 connect-distributed 启动后创建一个连接器,而不在容器外执行任何休息请求。我如何做到这一点?