如何使用dockerfile添加用户?

如何使用Dockerfile添加用户-以下内容不起作用。

USER vault

WORKDIR /usr/local/bin/vault

我完整的Dockerfile:

FROM alpine:3.4

RUN apk update && apk add curl unzip

RUN useradd -ms /bin/bash vault

USER vault

WORKDIR /usr/local/bin/vault

ADD /vault.hcl /etc/vault/vault.hcl

RUN curl -SL https://releases.hashicorp.com/vault/0.5.0/vault_0.5.0_linux_amd64.zip > vault.zip

RUN unzip vault.zip -d /usr/local/bin && rm vault.zip

回答:

使用useradd而非交互adduser来添加用户。

RUN useradd -ms /bin/bash  vault

以下命令不会创建user。

USER vault

WORKDIR /usr/local/bin/vault

它将使用vault用户

请参考Dockerfile用户文档

USER指令设置运行映像时使用的用户名或UID,以及Dockerfile中跟随该映像的所有RUN,CMD和ENTRYPOINT指令。

确保这bash是默认外壳程序。

如果使用默认外壳,则/bin/sh可以执行以下操作:

RUN ln -sf /bin/bash /bin/sh

RUN useradd -ms /bin/bash vault

以上是 如何使用dockerfile添加用户? 的全部内容, 来源链接: utcz.com/qa/436333.html

回到顶部