60 lines
1.8 KiB
Plaintext
60 lines
1.8 KiB
Plaintext
|
# code: language=ansible-jinja
|
||
|
version: "3.8"
|
||
|
|
||
|
services:
|
||
|
backup:
|
||
|
image: mazzolino/restic:{{ apps_vars.restic.version }}
|
||
|
restart: always
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
BACKUP_CRON: 0 0 3 * * *
|
||
|
RESTIC_REPOSITORY: b2:{{ restic.b2.bucket }}:{{ restic.repo }}
|
||
|
RESTIC_PASSWORD: {{ restic.repo_password }}
|
||
|
RESTIC_BACKUP_SOURCES: /mnt/volumes
|
||
|
RESTIC_BACKUP_ARGS: >-
|
||
|
--tag docker-volumes
|
||
|
--exclude '*.tmp'
|
||
|
--verbose
|
||
|
RESTIC_FORGET_ARGS: >-
|
||
|
--keep-last 10
|
||
|
--keep-daily 7
|
||
|
--keep-weekly 5
|
||
|
--keep-monthly 12
|
||
|
PRE_COMMANDS: |-
|
||
|
docker exec -u www-data nextcloud_app_1 php occ maintenance:mode --on
|
||
|
POST_COMMANDS_EXIT: |-
|
||
|
docker exec -u www-data nextcloud_app_1 php occ maintenance:mode --off
|
||
|
B2_ACCOUNT_ID: {{ restic.b2.id }}
|
||
|
B2_ACCOUNT_KEY: {{ restic.b2.key }}
|
||
|
TZ: {{ timezone }}
|
||
|
volumes:
|
||
|
{{ apps_restic_volumes }}
|
||
|
|
||
|
prune:
|
||
|
image: mazzolino/restic:{{ apps_vars.restic.version }}
|
||
|
restart: always
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
PRUNE_CRON: 0 0 4 * * *
|
||
|
RESTIC_REPOSITORY: b2:{{ restic.b2.bucket }}:{{ restic.repo }}
|
||
|
RESTIC_PASSWORD: {{ restic.repo_password }}
|
||
|
RESTIC_PRUNE_ARGS: >-
|
||
|
--verbose
|
||
|
B2_ACCOUNT_ID: {{ restic.b2.id }}
|
||
|
B2_ACCOUNT_KEY: {{ restic.b2.key }}
|
||
|
TZ: {{ timezone }}
|
||
|
|
||
|
check:
|
||
|
image: mazzolino/restic:{{ apps_vars.restic.version }}
|
||
|
restart: always
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
CHECK_CRON: 0 0 5 * * *
|
||
|
RESTIC_REPOSITORY: b2:{{ restic.b2.bucket }}:{{ restic.repo }}
|
||
|
RESTIC_PASSWORD: {{ restic.repo_password }}
|
||
|
RESTIC_CHECK_ARGS: >-
|
||
|
--verbose
|
||
|
B2_ACCOUNT_ID: {{ restic.b2.id }}
|
||
|
B2_ACCOUNT_KEY: {{ restic.b2.key }}
|
||
|
TZ: {{ timezone }}
|