0

当我的 Dockerfile 执行 RUN 命令时:

RUN npm-cli-adduser -r https://$PRIVATE_REPOSITORY_URL/repository/npm-read -u $PRIVATE_USERNAME -p "$PRIVATE_PASSWORD" -e service-foobar@example.com

它与终端中的私有环境变量相呼应。我想隐藏这些变量,让阅读终端的用户看不到它。

这可能吗?

4

1 回答 1

0

您可以使用 docker secrets,但据我了解,您需要将变量存储在文件中

像这样:

Dockerfile

FROM node:12

RUN --mount=type=secret,id=mysecret,dst=/foobar echo $(cat /foobar) >> test.txt
# In your case 
# RUN npm-cli-adduser -r https://$PRIVATE_REPOSITORY_URL/repository/npm-read -u $PRIVATE_USERNAME -p $(cat /foobar) -e service-foobar@example.com

构建命令

docker build --secret id=mysecret,src=mysecret.txt . -t docker-debug

mysecret.txt 内容:

YOURPASSWORD

参考

于 2021-02-16T19:23:03.283 回答