如何在Docker容器

时间:2015-08-11 20:20:08

标签: security docker docker-compose shared-secret

我将几个使用彼此API端点的Docker容器链接在一起。这些API端点受机密保护,并且在容器启动时生成。我正在寻找一种安全方式来在这些服务之间共享这些秘密,而无需执行任何操作 static (例如硬编码)。使用docker-compose创建并链接这些服务,并且可以使用环境变量覆盖秘密。但是,不鼓励此行为用于生产。

在我的情况下,分发这些秘密最安全的方法是什么?

我考虑过的事情:

  • 使用将这些秘密存储为文件的中央数据容器。然后,客户端可以链接到此容器并在文件中查找秘密。

这种方法的一个巨大缺点是它限制容器在同一节点上运行。

  • 在部署容器之前,生成一个docker-compose文件,并将这些随机密码硬编码到其中。

这种方法的缺点是,不可能简单地使用docker-compose文件,而是限制自己使用bash脚本来生成像这些秘密一样关键的任务。这也不符合我的观点,即解决方案应该动态适应秘密变化。

旁注

最终,如果解决方案也能动态适应秘密变化,我更愿意。例如,当容器发生故障时,它将自动重启,从而产生新的秘密。

0 个答案:

没有答案