66 lines
2.3 KiB
YAML
66 lines
2.3 KiB
YAML
|
---
|
||
|
- name: Deploy Restic with Docker Compose
|
||
|
docker_compose:
|
||
|
project_name: restic
|
||
|
pull: true
|
||
|
definition:
|
||
|
version: '3.8'
|
||
|
|
||
|
services:
|
||
|
restic_backup:
|
||
|
image: "mazzolino/restic:{{ services.restic.version }}"
|
||
|
restart: unless-stopped
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
BACKUP_CRON: '0 30 3 * * *'
|
||
|
RESTIC_REPOSITORY: "b2:{{ secrets.restic.b2.bucket }}:{{ services.restic.repo }}"
|
||
|
RESTIC_PASSWORD: "{{ secrets.restic.pw }}"
|
||
|
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
|
||
|
B2_ACCOUNT_ID: "{{ secrets.restic.b2.id }}"
|
||
|
B2_ACCOUNT_KEY: "{{ secrets.restic.b2.key }}"
|
||
|
TZ: Europe/Copenhagen
|
||
|
volumes:
|
||
|
- ./caddy:/mnt/volumes/caddy:ro
|
||
|
- ./nextcloud:/mnt/volumes/nextcloud:ro
|
||
|
networks:
|
||
|
restic:
|
||
|
|
||
|
restic_prune:
|
||
|
image: "mazzolino/restic:{{ services.restic.version }}"
|
||
|
restart: unless-stopped
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
PRUNE_CRON: '0 0 4 * * *'
|
||
|
RESTIC_REPOSITORY: "b2:{{ secrets.restic.b2.bucket }}:{{ services.restic.repo }}"
|
||
|
RESTIC_PASSWORD: "{{ secrets.restic.pw }}"
|
||
|
RESTIC_PRUNE_ARGS: >-
|
||
|
--verbose
|
||
|
B2_ACCOUNT_ID: "{{ secrets.restic.b2.id }}"
|
||
|
B2_ACCOUNT_KEY: "{{ secrets.restic.b2.key }}"
|
||
|
TZ: Europe/Copenhagen
|
||
|
networks:
|
||
|
restic:
|
||
|
|
||
|
restic_check:
|
||
|
image: "mazzolino/restic:{{ services.restic.version }}"
|
||
|
restart: unless-stopped
|
||
|
environment:
|
||
|
RUN_ON_STARTUP: false
|
||
|
CHECK_CRON: '0 15 5 * * *'
|
||
|
RESTIC_REPOSITORY: "b2:{{ secrets.restic.b2.bucket }}:{{ services.restic.repo }}"
|
||
|
RESTIC_PASSWORD: "{{ secrets.restic.pw }}"
|
||
|
RESTIC_CHECK_ARGS: >-
|
||
|
--verbose
|
||
|
B2_ACCOUNT_ID: "{{ secrets.restic.b2.id }}"
|
||
|
B2_ACCOUNT_KEY: "{{ secrets.restic.b2.key }}"
|
||
|
TZ: Europe/Copenhagen
|