# vim: ft=yaml.docker-compose version: "3.8" services: backup: image: mazzolino/restic:{{ services.restic.version }} restart: always environment: RUN_ON_STARTUP: false BACKUP_CRON: "0 30 3 * * *" RESTIC_REPOSITORY: sftp:{{ services.restic.user }}@{{ services.restic.domain }}:{{ services.restic.repository }} RESTIC_PASSWORD: "{{ restic_secrets.repository_password }}" RESTIC_BACKUP_SOURCES: /mnt/volumes RESTIC_BACKUP_ARGS: >- --tag datacoop-volumes --exclude '*.tmp' --exclude '/mnt/volumes/mastodon/mastodon_data/cache/' --exclude '/mnt/volumes/restic/' --verbose RESTIC_FORGET_ARGS: >- --keep-last 10 --keep-daily 7 --keep-weekly 5 --keep-monthly 12 TZ: Europe/Copenhagen POST_COMMANDS_FAILURE: /run/libexec/failure.sh POST_COMMANDS_SUCCESS: /run/libexec/success.sh volumes: - "./ssh:/run/secrets/.ssh:ro" - "./scripts:/run/libexec:ro" - "/docker-volumes:/mnt/volumes:ro" networks: - postfix prune: image: mazzolino/restic:{{ services.restic.version }} environment: RUN_ON_STARTUP: false PRUNE_CRON: "0 30 4 * * *" RESTIC_REPOSITORY: sftp:{{ services.restic.user }}@{{ services.restic.domain }}:{{ services.restic.repository }} RESTIC_PASSWORD: "{{ restic_secrets.repository_password }}" TZ: Europe/copenhagen volumes: - "./ssh:/run/secrets/.ssh:ro" networks: postfix: external: true