ansible/roles/docker/tasks/services/restic_backup.yml

41 lines
1.5 KiB
YAML

---
- name: Setup restic backup
community.docker.docker_compose:
project_name: restic_backup
pull: true
definition:
version: '3.6'
services:
restic-backup:
image: mazzolino/restic:{{ services.restic.version }}
restart: always
environment:
RUN_ON_STARTUP: 'true'
BACKUP_CRON: 0 30 3 * * *
RESTIC_REPOSITORY: rest:https://{{ services.restic.user }}:{{ restic_secrets.user_password
}}@{{ 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'
--verbose
RESTIC_FORGET_ARGS: >-
--keep-last 10
--keep-daily 7
--keep-weekly 5
--keep-monthly 12
TZ: Europe/Copenhagen
volumes:
- /docker-volumes:/mnt/volumes:ro
restic-prune:
image: mazzolino/restic:{{ services.restic.version }}
environment:
RUN_ON_STARTUP: 'true'
PRUNE_CRON: 0 0 4 * * *
RESTIC_REPOSITORY: rest:https://{{ services.restic.user }}:{{ restic_secrets.user_password
}}@{{ services.restic.domain }}/{{ services.restic.repository }}
RESTIC_PASSWORD: '{{ restic_secrets.repository_password }}'
TZ: Europe/copenhagen