无法仅使用 Docker 将 TLS 证书装载到 Vault 容器中

Can't mount TLS certificate into Vault container using only Docker

提问人:sabri mahmoud 提问时间:2/5/2022 更新时间:2/5/2022 访问量:775

问:

我是 Vault 和 Docker 的新手,我在禁用传输层安全性的情况下使用 Vault,现在我想激活它以便能够通过 HTTPS 查询 Vault 我通过此命令使用 Openssl 生成了自签名证书

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365

您可以在 Stack 上找到解释。

如前所述,Hashicorp Vault Discussion 卷必须从本地装载到容器中。

首先,我创建了 docker 卷,并手动复制了该卷中的认证

docker volume create vault-volume

我在文档中发现添加可能会有所帮助,所以这是我的命令--mount source=vault-volume,target=path_inside_the_container

 sudo docker run  --rm  --name hashicorp_vault --mount source=vault-volume,target=/vault/certs \ 
--cap-add=IPC_LOCk -e VAULT_ADDR=http:0.0.0.0:8200 \
 -e 'VAULT_LOCAL_CONFIG=$config_placeholder' \
 vault

配置占位符

{
"backend": {
         "file": {
                    "path": "/vault/file"
                   }
           },
         "listener": [{
               "tcp":{
                     "address": "0.0.0.0:8201","tls_disable":"0", 
                     "tls_cert_file":"/vault/certs/cert.pem", 
                     "tls_key_file":"/vault/certs/key.pem"
                     }
           }],
         "api_addr": "http://0.0.0.0:8200",
         "cluster_addr": "https://0.0.0.0:8201",
         "ui": "true"
}

现在我得到了这个错误

Error initializing listener of type tcp: error loading TLS cert: open /vault/certs/cert.pem: no such file or directory

容器不知道该目录,但据我了解,我已经挂载了它,以便它将为我创建它

我在这里遗漏了一些东西,我将不胜感激,为您提供任何有用的解释解决方案

docker ssl 容器 挂载卷

评论


答: 暂无答案