2016-10-04 103 views

回答

18

使用useradd而不是它的互動adduser添加用戶。

RUN useradd -ms /bin/bash vault 

下面的命令不會創建用戶。

USER vault 
WORKDIR /usr/local/bin/vault 

它將使用vault用戶

請參閱Dockerfile User Documentation

用戶指令設置的用戶名或UID運行 圖像時使用,並且對任何運行,CMD和入口點指示在Dockerfile中跟着它 。

注:確保bash是默認的shell。

如果默認的shell是/bin/sh你可以這樣做:

RUN ln -sf /bin/bash /bin/sh 
RUN useradd -ms /bin/bash vault 
+0

顯示您Dockerfile,而行'FROM' – user2915097

+1

'高寒:3.4 RUN APK更新&& APK添加捲曲解壓 執行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 運行unzip vault.zip -d/usr/local/bin && rm vault.zip' – Atlantic0

+0

嘗試回答我的最後部分 –