Vault
В данном руководстве описана загрузка данных (сидирование) в vault.
Настройка окружения
Получите рабочую копию репозитория seeder:
git clone https://github.com/petr-korobeinikov/seeder.git
Перейдите в каталог seeder-showcase/vault:
cd seeder-showcase/vault
Разверните локальное окружение:
docker compose up -d
Note
Если у вас не настроено расширение compose, самое время перейти на него
или продолжить использовать устаревшую команду docker-compose.
Изучение демонстрационных данных
Рассмотрите спецификацию описания сидов:
cat seeder.yaml
seeder:
state:
- name: vault file seed
type: vault
config:
- key: "secret/data/seed/file/json"
file: seed/seed.json
- key: "secret/data/seed/file/yaml"
file: seed/seed.yaml
- key: "secret/data/seed/file/yml"
file: seed/seed.yml
В спецификации описаны три правила загрузки данных в vault, сохранённых в
разных форматах в виде файла:
jsonyamlyml
Все три формата эквивалентны и отличаются только правилами форматирования, зависящими от синтаксиса языка.
Загрузка данных
Для загрузки данных выполните команду:
export SEEDER_VAULT_ADDRESS=http://localhost:8200
export SEEDER_VAULT_TOKEN=secret
seeder
Note
Если вы не используете Docker Desktop, вам, возможно, потребуется
заменить localhost в строке подключения на правильное имя хоста
или адрес машины с dockerd.
Проверка результата
Выполните следующие команды для проверки загруженных данных в vault.
docker exec \
-e VAULT_ADDR='http://127.0.0.1:8200' \
-e VAULT_TOKEN=secret \
vault vault kv get secret/seed/file/yaml
docker exec \
-e VAULT_ADDR='http://127.0.0.1:8200' \
-e VAULT_TOKEN=secret \
vault vault kv get secret/seed/file/yml
docker exec \
-e VAULT_ADDR='http://127.0.0.1:8200' \
-e VAULT_TOKEN=secret \
vault vault kv get secret/seed/file/json
Остановка локального окружения
Для остановки локального окружения выполните команду:
docker compose down
Резюме
В приведённом руководстве:
- Было развёрнуто локальное окружение с
vaultдля загрузки демонстрационных данных (сидов); - Изучен формат описания сидов для
vault; - Демонстрационные данные загружены в
vault.