Edu*_*lde 3 docker docker-compose hashicorp-vault vault
简而言之,在我放置docker-compose down并重新部署它之后,我正在努力将保存在本地计算机的保管库容器中的数据保留下来docker-compose up -d,数据丢失了。我将向您展示我的.yml看起来如何非常简单:
version: '3.7'
services:
vault_dev:
image: vault:latest
volumes:
- vault-file:/vault/file
ports:
- "8200:8200/tcp"
environment:
VAULT_DEV_ROOT_TOKEN_ID: 'root'
VAULT_DEV_LISTEN_ADDRESS: '0.0.0.0:8200'
cap_add:
- IPC_LOCK
container_name: vault_dev
entrypoint: "vault server -dev"
volumes:
vault-file: {}
Run Code Online (Sandbox Code Playgroud)
在 docker-compose 中使用生产 Vault 服务器进行本地开发不是,因为您必须经常解封它,通常是每次重新启动容器时。
我发现使用 Vault dev更容易服务器模式与一个额外的引导容器(根据需要初始化 Vault 状态)要容易得多。
以下是具体操作方法。首先在 compose 中定义 Vault Dev Server。
http://localhost:8200/ui/vault它具有可从您的开发计算机docker-compose.yml
vault:
hostname: vault
container_name: vault
image: vault:1.12.0
environment:
VAULT_ADDR: "http://0.0.0.0:8200"
VAULT_API_ADDR: "http://0.0.0.0:8200"
ports:
- "8200:8200"
volumes:
- ./volumes/vault/file:/vault/file:rw
cap_add:
- IPC_LOCK
entrypoint: vault server -dev -dev-listen-address="0.0.0.0:8200" -dev-root-token-id="root"
Run Code Online (Sandbox Code Playgroud)
现在保险库已准备好使用,但它是空的 - 没有启用密钥或其他秘密引擎。为了填充必要的数据,我使用第二个容器,该容器仅启动一次,并启用/创建将在我的工作期间使用的引擎/密钥。
docker-compose.yml
vault-init:
container_name: vault-init
image: vault:1.12.0
volumes:
- ./vault-init.sh:/vault-init.sh
depends_on:
- vault
restart: "no"
entrypoint: sh -c "/vault-init.sh"
Run Code Online (Sandbox Code Playgroud)
该容器正在执行vault-init.sh我在目录中准备的脚本(在本示例中,它与 docker-compose 文件的目录相同,但您可以将其放在另一个目录中并更改安装路径)。该脚本执行以下步骤:
#! /bin/sh
set -e
export VAULT_ADDR=http://vault:8200
# give some time for Vault to start and be ready
sleep 3
# login with root token at $VAULT_ADDR
vault login root
# enable vault transit engine
vault secrets enable transit
# create key1 with type ed25519
vault write -f transit/keys/key1 type=ed25519
# create key2 with type ecdsa-p256
vault write -f transit/keys/key2 type=ecdsa-p256
Run Code Online (Sandbox Code Playgroud)
启动后,docker-compose up -d您可以使用浏览器打开 Vault UI 并验证 Vault 是否处于您想要的状态:http://localhost:8200/ui/vault
| 归档时间: |
|
| 查看次数: |
3021 次 |
| 最近记录: |