【发布时间】:2017-06-27 21:10:57
【问题描述】:
在本地,我一直在使用 Nginx 容器进行开发,该容器在一个目录中包含所有 ssl 配置和 ssl 证书。
但是,既然我即将转向 prod,我很好奇将证书放在 nginx 容器中是否是一种好习惯?
或者,我可以将证书直接放在服务器上。
很好奇社区对此的看法。
【问题讨论】:
标签: ssl nginx docker lets-encrypt
在本地,我一直在使用 Nginx 容器进行开发,该容器在一个目录中包含所有 ssl 配置和 ssl 证书。
但是,既然我即将转向 prod,我很好奇将证书放在 nginx 容器中是否是一种好习惯?
或者,我可以将证书直接放在服务器上。
很好奇社区对此的看法。
【问题讨论】:
标签: ssl nginx docker lets-encrypt
就我个人而言,我永远不会将秘密放在 docker 映像中。始终在容器启动时安装它们。首选volume 挂载而不是env_var,因为env_var 可以被容器内的所有进程访问,并且更有可能被应用程序记录。
图像应该被认为是可共享的(跨团队/环境..),但是一旦您将它们与诸如cert.pem 之类的关键机密一起发送,可共享方面就有点危险了..
此外,通常不是您团队中的每个开发人员都需要知道您的产品机密,但他们可能有权访问 docker 映像。
【讨论】:
volume?
volume 或env_var,但首选volume,因为env_var 更容易被攻破(更有可能被应用程序记录并被所有进程访问容器..).
您可能想查看 Kubernetes Secrets,了解如何将敏感数据共享到您的容器。较新版本的 Docker (1.13) 具有与容器共享机密的类似机制(docker secrets)。
【讨论】: