连接到 Vault 时检查密封状态时出错 Docker

Error checking seal status while connecting to Vault Docker

我正在尝试 运行 在服务器模式下进行保险库 docker,如 here 所述。这是我用来 运行 vault

的命令
docker run --cap-add=IPC_LOCK -e 'VAULT_LOCAL_CONFIG={"backend": {"file": {"path": "/home/jwahba/PycharmProjects/work/vault/vault.json"}}, "default_lease_ttl": "168h", "max_lease_ttl": "720h"}' vault server

这是vault.json配置文件

storage "inmem" {}

listener "tcp" {
  address     = "127.0.0.1:8200"
  tls_disable = 1
}

disable_mlock = true

容器启动成功。

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
55100205d2ab        vault               "docker-entrypoint..."   6 minutes ago       Up 6 minutes        8200/tcp            stoic_blackwell

然而,当我尝试执行

 docker exec stoic_blackwell vault status

我收到以下错误:

Error checking seal status: Get https://127.0.0.1:8200/v1/sys/seal-status: dial tcp 127.0.0.1:8200: connect: connection refused

有一个类似的问题但不幸的是我无法弄清楚我配置错误的原因。

有什么建议吗?

VAULT_LOCAL_CONFIG参数指定了你的Vault的配置;使用 {"backend": {"file": 注释将文件后端设置为存储后端。

因此,在 VAULT_LOCAL_CONFIG 中,您应该直接包含您在配置文件 (vault.json) 中编写的内容。

旁注:你写的配置文件是HCL语言,不是json。

请用下面的命令试试,

vault status -tls-skip-verify