【发布时间】:2018-11-24 03:38:02
【问题描述】:
我正在为 jenkins 奴隶构建一个 docker 映像。该詹金斯奴隶将不得不向/从工件存储库推送和拉取工件。
这适用于 Java 和 maven 项目。所以我需要在我的 docker 容器中有一个 settings.xml,以便我可以在多个私有存储库中进行身份验证。
我的想法是在 Dockerfile 中复制一个 settings.xml,但因为它包含敏感信息(用户名、密码),所以我担心安全性。我可以在源代码管理中加密此内容吗?更重要的是,我可以避免人们仅仅下载这个文件并能够使用加密的凭据吗?理想情况下,我应该有一种机制来确保加密文件只能在 docker 容器的上下文中工作。
【问题讨论】:
-
我遇到了同样的问题。对我来说很有帮助的是maven.apache.org/guides/mini/guide-encryption.html
-
创建主密码并使用它来加密 settings.xml 中的密码。将加密文件上传到源代码管理。 settings-security.xml 应该存在于 docker 镜像中以便能够解密密码。 maven.apache.org/guides/mini/guide-encryption.html
-
@ben5556 对我来说正是这个问题。我可以将加密文件添加到源代码控制中,但由于我还在 dockerfile 中添加了 settings-security.xml 来解密,所以每个人都可以使用它并解密文件。还是我在这里遗漏了什么?