【问题标题】:Kafka-connect docker image built as appuser - how to build it as root?以 appuser 身份构建的 Kafka-connect docker 映像 - 如何以 root 身份构建它?
【发布时间】:2021-04-20 08:41:33
【问题描述】:

我正在尝试在 Docker 中构建 Kafka-Connect 映像:

FROM confluentinc/cp-kafka-connect

RUN confluent-hub install --no-prompt wepay/kafka-connect-bigquery:1.6.1
RUN confluent-hub install --no-prompt confluentinc/connect-transforms:latest

RUN mkdir -p /usr/share/landoop-plugins
COPY kafka-connect-redis-1.2.2-2.1.0-all.jar /usr/share/landoop-plugins/

但它运行为appuser

Step 4/4 : RUN id
 ---> Running in d2094f6336a7
uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)

如果我想的话

RUN mkdir -p /usr/share/landoop-plugins

由于 root 权限而停止:

mkdir: cannot create directory '/usr/share/landoop-plugins': Permission denied
The command '/bin/sh -c mkdir -p /usr/share/landoop-plugins' returned a non-zero code: 1

我可以在Dockerfile开头加上USER root

Step 3/15 : RUN id
 ---> Running in 6255e2e7ff81
uid=0(root) gid=0(root) groups=0(root)

但是如果我运行容器,我会登录为appuser,这会导致权限问题: [appuser@connect ~]$.

实际上,在源图像中 confluentinc/cp-kafka-connect:6.0.0 有一层USER appuser,所以我的问题是如何将我的图像构建为root,然后以root 登录并且不要使用appuser 用户。我试过了,USER root 没有帮助。

它是否与群体有某种联系?

groups
gignac sudo docker

我也试过docker buildsudo docker build

【问题讨论】:

  • 您能否编辑您的问题以包含您当前的Dockerfile

标签: docker apache-kafka apache-kafka-connect


【解决方案1】:

当我需要为 Kafka Connect 创建自己的插件时,我会做类似的事情,但我并不完全以 root 身份进行。 只需将我的 jar 放在我有权编写的地方,然后配置插件环境设置

类似这样的:

FROM    confluentinc/cp-kafka-connect:5.5.2

ENV     CONNECT_PLUGIN_PATH='/usr/share/java,/usr/share/confluent-hub-components'

COPY    converter/* /usr/share/java/kafka-serde-tools/
COPY    format/* /usr/share/java/kafka-connect-storage-common/

这样不行吗?

【讨论】:

  • CONNECT_PLUGIN_PATH 是正确的。你不需要KAFKA_CONNECT_PLUGIN_PATH
【解决方案2】:

为了安装软件包和故障排除,我们需要 root 用户。使用版本 5.5.3 可以实现不创建 APPUSER 并且默认加载 root 的技巧。 版本可以通过验证

http://localhost:8083/connectors

提供版本详细信息。

【讨论】:

    猜你喜欢
    • 2021-07-19
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 2017-01-26
    相关资源
    最近更新 更多