Docker Compose source: настройка и тесты

source.type: docker_compose делает snapshot compose-проекта:

Результат — .tar.gz артефакт.

Конфиг source

source:
  type: docker_compose
  config:
    project_dir: /add/global/projects/iobackup/examples/dev/compose-app
    compose_files:
      - docker-compose.yml
    include_paths:
      - .env
    snapshot_volumes: true
    timeout: 30m

Поля:

Docker-стенд compose-проекта

Файлы:

Запуск и сид:

chmod +x ./examples/dev/compose-app/seed-dev.sh
./examples/dev/compose-app/seed-dev.sh

Пример backup job

Готовый пример (примеры на сайте):

Запуск:

go run ./cmd/iobackupctl --server http://127.0.0.1:8735 --token-env IOBACKUP_API_TOKEN \
  job submit ./examples/docker-compose.local.yaml

go run ./cmd/iobackupctl --server http://127.0.0.1:8735 --token-env IOBACKUP_API_TOKEN \
  job run docker-compose-local

Проверка:

go run ./cmd/iobackupctl --server http://127.0.0.1:8735 --token-env IOBACKUP_API_TOKEN artifact list

Остановка стенда:

docker compose -f ./examples/dev/compose-app/docker-compose.yml \
  --project-directory ./examples/dev/compose-app down -v