mirror of
https://github.com/offen/docker-volume-backup.git
synced 2024-12-23 17:30:20 +01:00
77 lines
1.8 KiB
YAML
77 lines
1.8 KiB
YAML
# Copyright 2020-2021 - offen.software <hioffen@posteo.de>
|
|
# 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
|