# 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.path }} 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.path }} 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.path }} RESTIC_PASSWORD: {{ restic.repo.password }} RESTIC_CHECK_ARGS: >- --verbose B2_ACCOUNT_ID: {{ restic.b2.id }} B2_ACCOUNT_KEY: {{ restic.b2.key }} TZ: {{ timezone }}