2022-02-22 07:53:33 +01:00
|
|
|
version: '3.8'
|
|
|
|
|
|
|
|
services:
|
|
|
|
database:
|
|
|
|
image: mariadb:10.7
|
|
|
|
deploy:
|
|
|
|
restart_policy:
|
|
|
|
condition: on-failure
|
|
|
|
environment:
|
|
|
|
MARIADB_ROOT_PASSWORD: test
|
|
|
|
MARIADB_DATABASE: backup
|
|
|
|
labels:
|
2022-07-10 10:36:56 +02:00
|
|
|
# this is testing the deprecated label on purpose
|
2022-02-22 07:53:33 +01:00
|
|
|
- docker-volume-backup.exec-pre=/bin/sh -c 'mysqldump -ptest --all-databases > /tmp/volume/dump.sql'
|
2022-07-10 10:36:56 +02:00
|
|
|
- docker-volume-backup.copy-post=/bin/sh -c 'echo "post" > /tmp/volume/post.txt'
|
2022-02-22 07:53:33 +01:00
|
|
|
- docker-volume-backup.exec-label=test
|
|
|
|
volumes:
|
|
|
|
- app_data:/tmp/volume
|
|
|
|
|
2022-07-15 09:34:01 +02:00
|
|
|
other_database:
|
|
|
|
image: mariadb:10.7
|
|
|
|
deploy:
|
|
|
|
restart_policy:
|
|
|
|
condition: on-failure
|
|
|
|
environment:
|
|
|
|
MARIADB_ROOT_PASSWORD: test
|
|
|
|
MARIADB_DATABASE: backup
|
|
|
|
labels:
|
|
|
|
- docker-volume-backup.archive-pre=touch /tmp/volume/not-relevant.txt
|
|
|
|
- docker-volume-backup.exec-label=not-relevant
|
|
|
|
volumes:
|
|
|
|
- app_data:/tmp/volume
|
|
|
|
|
2022-02-22 07:53:33 +01:00
|
|
|
backup:
|
|
|
|
image: offen/docker-volume-backup:${TEST_VERSION:-canary}
|
|
|
|
deploy:
|
|
|
|
restart_policy:
|
|
|
|
condition: on-failure
|
|
|
|
environment:
|
|
|
|
BACKUP_FILENAME: test.tar.gz
|
|
|
|
BACKUP_CRON_EXPRESSION: 0 0 5 31 2 ?
|
|
|
|
EXEC_LABEL: test
|
|
|
|
EXEC_FORWARD_OUTPUT: "true"
|
|
|
|
volumes:
|
2023-09-02 15:17:46 +02:00
|
|
|
- ${LOCAL_DIR:-./local}:/archive
|
2022-02-22 07:53:33 +01:00
|
|
|
- app_data:/backup/data:ro
|
|
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
app_data:
|