如何使用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来添加用户。
useradd
adduser
RUN useradd -ms /bin/bash vault
以下命令不会创建user。
它将使用vault用户
vault
请参考Dockerfile用户文档
USER指令设置运行映像时使用的用户名或UID,以及Dockerfile中跟随该映像的所有RUN,CMD和ENTRYPOINT指令。
注意: 确保这bash是默认外壳程序。
bash
如果使用默认外壳,则/bin/sh可以执行以下操作:
/bin/sh
RUN ln -sf /bin/bash /bin/sh RUN useradd -ms /bin/bash vault