gpt4 book ai didi

docker - 将 Vault 与 docker-compose 文件一起使用

转载 作者:IT老高 更新时间:2023-10-28 12:45:00 41 4
gpt4 key购买 nike

目前我正在使用 docker-compose 文件来设置我的开发/生产环境。我正在使用环境变量来存储 secret 、数据库凭据等。经过一番搜索,我发现 Vault 可用于保护凭据。我尝试了几个带有 Vault 的基本示例,但我仍然不知道如何将 Vault 与 docker-compose 文件一起使用。有人可以指出我正确的方法。如果 Vault 不是 docker-compose 的一个很好的解决方案,我可以使用哪些机制来保护凭据,而不是将它们作为纯文本存储在环境中。

最佳答案

这是我目前在 dev 中使用 Vault 的 docker-compose 配置,但我在生产中使用专用服务器(不是 Docker)。

# docker_compose.yml
version: '2'
services:
myvault:
image: vault
container_name: myvault
ports:
- "127.0.0.1:8200:8200"
volumes:
- ./file:/vault/file:rw
- ./config:/vault/config:rw
cap_add:
- IPC_LOCK
entrypoint: vault server -config=/vault/config/vault.json

如果您必须重建容器,卷安装可确保保存保管库配置。

要使用 'file' 后端,为了使该设置可移植到 Docker/Git,您还需要创建一个名为 config 的目录并将该文件放入其中,名为 vault .json:

# config/vault.json
{
"backend": {"file": {"path": "/vault/file"}},
"listener": {"tcp": {"address": "0.0.0.0:8200", "tls_disable": 1}},
"default_lease_ttl": "168h",
"max_lease_ttl": "0h"
}

注意事项:
虽然 ROOT_TOKEN 在此配置中是静态的(不会在容器构建之间更改),但为 app_role 发出的任何生成的 VAULT_TOKEN 每次都会失效保险库必须开封。

我发现 Vault 有时会在容器重新启动时被密封。

关于docker - 将 Vault 与 docker-compose 文件一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45171564/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com