当通过 Vault Docker 图像 运行 时,在服务器模式下卷入 Vault 服务器 运行 失败

Curl into Vault server running in server mode fails when running via Vault Docker image

我一直在 运行 使用 Docker 保险库文档中提供的官方示例设置保险库服务器模式。尽管服务器成功启动,但我无法通过其 HTTP Rest API 与 Vault 服务器进行交互。在下面找到我的 docker 运行 命令。

docker run -e 'SKIP_SETCAP=1' -e 'VAULT_LOCAL_CONFIG={"backend": {"file": {"path": "/vault/file"}}, "listener": { "tcp": { "address": "0.0.0.0:8200", "tls_disable": 1 } }, "default_lease_ttl": "168h", "max_lease_ttl": "720h", "disable_mlock": "true"}' vault server

当我尝试进入 Vault 服务器以验证 Vault 服务器初始化时,它会抛出连接被拒绝的错误。

ravindu@ravindu-Aspire-F5-573G:~$ curl http://127.0.0.1:8201/v1/sys/init
curl: (7) Failed to connect to 127.0.0.1 port 8201: Connection refused

以下是 docker 保险库 docker 容器启动且 运行ning,

时显示的消息
==> Vault server configuration:

                     Cgo: disabled
              Listener 1: tcp (addr: "0.0.0.0:8200", cluster address: "0.0.0.0:8201", tls: "disabled")
               Log Level: info
                   Mlock: supported: true, enabled: false
                 Storage: file
                 Version: Vault v0.8.3
             Version Sha: 6b29fb2b7f70ed538ee2b3c057335d706b6d4e36

==> Vault server started! Log data will stream in below:

下面是我的 local.json 在我的保险库容器中,

{"backend": {"file": {"path": "/vault/file"}}, "listener": { "tcp": { "address": "0.0.0.0:8200", "tls_disable": 1 } }, "default_lease_ttl": "168h", "max_lease_ttl": "720h", "disable_mlock": "true"}

你不能卷曲的原因是你没有公开端口。 您需要将 -p 8200:8200 添加到 运行 命令,并使用端口 8200 进行连接。