这是我的情况:
我有一个Django应用程序,它取决于存储在.env
文件中的配置值。此.env
文件与源代码管理分开,以保持敏感信息的私密性。这个Django应用程序部署在一个docker容器中,我将jenkins设置为在将更改检入我们的git存储库时重建容器。除非构建环境中存在.env
文件,否则构建将失败。包含该文件的最佳方法是什么?
我目前有jenkins设置执行shell命令将文件写入构建环境,但我不禁觉得这是次优的,安全性方面。什么是更好的方法呢?
答案 0 :(得分:1)
我们提出的答案是将文件存储在s3上,并使用aws cli在构建时获取文件。由于构建注定要上传到ec2,因此对两个操作使用aws凭证都是有意义的。
答案 1 :(得分:0)
将文件包含在仅授予您/授权用户访问权限的源代码中会破坏您的隐私政策吗? 此外,您可以尝试始终将文件保留在Jenkins工作空间目录中,并且在清理工作区时永远不要删除它。