# Copyright 2020-2021 - offen.software # SPDX-License-Identifier: Unlicense services: minio: image: minio/minio:RELEASE.2020-08-04T23-10-51Z deploy: restart_policy: condition: on-failure environment: MINIO_ROOT_USER: test MINIO_ROOT_PASSWORD: test MINIO_ACCESS_KEY: test MINIO_SECRET_KEY: GMusLtUmILge2by+z890kQ entrypoint: /bin/ash -c 'mkdir -p /data/backup && minio server /data' volumes: - backup_data:/data backup: image: offen/docker-volume-backup:${TEST_VERSION:-canary} depends_on: - minio deploy: restart_policy: condition: on-failure environment: AWS_ACCESS_KEY_ID_FILE: /run/secrets/minio_root_user AWS_SECRET_ACCESS_KEY_FILE: /run/secrets/minio_root_password AWS_ENDPOINT: minio:9000 AWS_ENDPOINT_PROTO: http AWS_S3_BUCKET_NAME: backup BACKUP_FILENAME: test.tar.gz BACKUP_CRON_EXPRESSION: 0 0 5 31 2 ? BACKUP_RETENTION_DAYS: 7 BACKUP_PRUNING_LEEWAY: 5s volumes: - pg_data:/backup/pg_data:ro - /var/run/docker.sock:/var/run/docker.sock secrets: - minio_root_user - minio_root_password offen: image: offen/offen:latest labels: - docker-volume-backup.stop-during-backup=true healthcheck: disable: true deploy: replicas: 2 restart_policy: condition: on-failure pg: image: postgres:14-alpine environment: POSTGRES_PASSWORD: example labels: - docker-volume-backup.stop-during-backup=true volumes: - pg_data:/var/lib/postgresql/data deploy: restart_policy: condition: on-failure volumes: backup_data: name: backup_data pg_data: name: pg_data secrets: minio_root_user: external: true minio_root_password: external: true