【发布时间】:2018-08-20 05:24:49
【问题描述】:
在 http://docs.docker.com/engine/reference/builder/#arg 中,建议不要通过 ARGS 传递秘密。
注意:不建议使用构建时变量来传递 github 密钥、用户凭据等秘密。
什么时候通过构建时变量传递秘密有危险?
【问题讨论】:
-
当你以明文形式将它们输入终端时?
-
这也适用于将文件添加到环境变量并通过环境变量传递它吗?
-
我认为 cat-ing 文件很好。有些人将他们的密钥(例如 AWS)放在
.bashrc中,以便在每个 bash 会话中加载它们。我只是认为该注释指的是docker build --build-arg param=... -
我试图在构建时传递一个 ssh 密钥而不留下密钥的层历史记录。添加、删除和压缩是一种选择,但理想情况下,我不必为了隐藏秘密而这样做。
-
注意:使用 docker 18.09+,您现在拥有
docker build --secret id=mysecret,src=/secret/file。见stackoverflow.com/a/51921954/6309
标签: docker credentials dockerfile