[英]Spring application and Vault in docker-compose: how to init vault server?
我正在开发一个应该从 Vault 获取一些秘密的应用程序。 我希望应用程序在一个容器上运行,而保管库服务器在另一个容器上运行。 但是,我在将东西与 docker-compose 放在一起时遇到了一些问题。
services:
app:
image: app/progettinotoy
networks:
- mainnet
ports:
- 8080:8080
depends_on:
- "vault"
vault:
image: vault
cap_add:
- "IPC_LOCK"
networks:
- mainnet
ports:
- 8200:8200
environment:
VAULT_ADDR: http://127.0.0.1:8200
VAULT_LOCAL_CONFIG:
api_addr = "http://127.0.0.1:8200"
cluster_addr = "https://127.0.0.1:8201"
ui = true
backend "file" {
path = "/vault/file"
}
listener "tcp" {
address = "0.0.0.0:8200"
tls_disable = "true"
}
command:
- "server"
networks:
mainnet:
driver: bridge
主要原因是即使保险库服务器正在运行,我也应该在应用程序开始与保险库服务器交互之前执行vault operator init
并获取根令牌和解封密钥。 我怎样才能做到这一点?
答案取决于存储在/vault/file
上的数据会发生什么。
如果数据是持久的(它会在重启后仍然存在)? 如果是这样,您应该自行部署 Vault 并进行适当的初始化仪式。
如果不是(如临时测试实例),请使用server -dev --dev-root-token-id=asdf
在 DEV 模式下运行 Vault,它将使用asdf
作为根令牌。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.