Begin remove backup from docker + Debian support

This commit is contained in:
Florian RICHER 2023-06-08 23:51:39 +02:00
parent e026113bb7
commit 7fe8837098
31 changed files with 82 additions and 565 deletions

View file

@ -2,7 +2,3 @@
- ansible.builtin.import_tasks: base.yml
name: base
- ansible.builtin.import_tasks: restore.yml
name: restore
when: restore.matrix.db_archive and restore.matrix.matrix_archive and restore.matrix.mautrix_facebook_archive and restore.matrix.mautrix_instagram_archive and restore.matrix.mautrix_discord_archive

View file

@ -1,52 +0,0 @@
---
- name: Copy archives
ansible.builtin.copy:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
loop:
- { src: '{{ restore.matrix.db_archive }}', dest: 'matrix_db.tar.gz' }
- { src: '{{ restore.matrix.matrix_archive }}', dest: 'matrix_matrix.tar.gz' }
- { src: '{{ restore.matrix.mautrix_facebook_archive }}', dest: 'matrix_mautrix_facebook.tar.gz' }
- { src: '{{ restore.matrix.mautrix_instagram_archive }}', dest: 'matrix_mautrix_instagram.tar.gz' }
- { src: '{{ restore.matrix.mautrix_discord_archive }}', dest: 'matrix_mautrix_discord.tar.gz' }
- name: Stop nextcloud container
community.docker.docker_compose:
project_src: matrix
state: absent
become: true
- name: Restore backup
community.docker.docker_container:
name: volume_restore
image: volume_restore:latest
auto_remove: yes
tty: true
volumes:
- "{{ item.path }}:/backup/archive.tar.gz"
- "{{ item.volume }}:/backup/dest"
loop:
- { path: './matrix_db.tar.gz', volume: 'matrix_db' }
- { path: './matrix_matrix.tar.gz', volume: 'matrix_matrix' }
- { path: './matrix_mautrix_facebook.tar.gz', volume: 'matrix_mautrix_facebook' }
- { path: './matrix_mautrix_instagram.tar.gz', volume: 'matrix_mautrix_instagram' }
- { path: './matrix_mautrix_discord.tar.gz', volume: 'matrix_mautrix_discord' }
become: true
- name: Start nextcloud container
community.docker.docker_compose:
project_src: matrix
state: present
become: true
- name: Remove archive
ansible.builtin.file:
path: "{{ item.path }}"
state: absent
loop:
- { path: 'matrix_db.tar.gz' }
- { path: 'matrix_matrix.tar.gz' }
- { path: 'matrix_mautrix_facebook.tar.gz' }
- { path: 'matrix_mautrix_instagram.tar.gz' }
- { path: 'matrix_mautrix_discord.tar.gz' }

View file

@ -56,100 +56,6 @@ services:
- "traefik.http.routers.matrix-wellknown.middlewares=cors-headers@docker"
- "traefik.docker.network=proxy"
# BRIDGE
mautrix-facebook:
container_name: mautrix-facebook
image: dock.mau.dev/mautrix/facebook:v0.4.1
restart: unless-stopped
networks:
- internal
volumes:
- mautrix_facebook:/data
mautrix-instagram:
container_name: mautrix-instagram
image: dock.mau.dev/mautrix/instagram:v0.2.3
restart: unless-stopped
networks:
- internal
volumes:
- mautrix_instagram:/data
mautrix-discord:
container_name: mautrix-discord
image: dock.mau.dev/mautrix/discord:v0.2.0
restart: unless-stopped
networks:
- internal
volumes:
- mautrix_discord:/data
# BACKUP
backup_db:
image: offen/docker-volume-backup:latest
restart: always
environment:
BACKUP_CRON_EXPRESSION: "{{ server.backup.cron_expression }}"
BACKUP_FILENAME: "{{ server.backup.filename_date_format }}-db.tar.gz"
BACKUP_LATEST_SYMLINK: db.latest.tar.gz
BACKUP_EXCLUDE_REGEXP: "\\.log$$"
BACKUP_RETENTION_DAYS: "{{ server.backup.retention_days }}"
volumes:
- db:/backup:ro
- {{ server.backup.folder }}/matrix:/archive
backup_matrix:
image: offen/docker-volume-backup:latest
restart: always
environment:
BACKUP_CRON_EXPRESSION: "{{ server.backup.cron_expression }}"
BACKUP_FILENAME: "{{ server.backup.filename_date_format }}-matrix.tar.gz"
BACKUP_LATEST_SYMLINK: matrix.latest.tar.gz
BACKUP_EXCLUDE_REGEXP: "\\.log$$"
BACKUP_RETENTION_DAYS: "{{ server.backup.retention_days }}"
volumes:
- matrix:/backup:ro
- {{ server.backup.folder }}/matrix:/archive
backup_mautrix_facebook:
image: offen/docker-volume-backup:latest
restart: always
environment:
BACKUP_CRON_EXPRESSION: "{{ server.backup.cron_expression }}"
BACKUP_FILENAME: "{{ server.backup.filename_date_format }}-mautrix-facebook.tar.gz"
BACKUP_LATEST_SYMLINK: mautrix-facebook.latest.tar.gz
BACKUP_EXCLUDE_REGEXP: "\\.log$$"
BACKUP_RETENTION_DAYS: "{{ server.backup.retention_days }}"
volumes:
- mautrix_facebook:/backup:ro
- {{ server.backup.folder }}/matrix:/archive
backup_mautrix_instagram:
image: offen/docker-volume-backup:latest
restart: always
environment:
BACKUP_CRON_EXPRESSION: "{{ server.backup.cron_expression }}"
BACKUP_FILENAME: "{{ server.backup.filename_date_format }}-mautrix-instagram.tar.gz"
BACKUP_LATEST_SYMLINK: mautrix-instagram.latest.tar.gz
BACKUP_EXCLUDE_REGEXP: "\\.log$$"
BACKUP_RETENTION_DAYS: "{{ server.backup.retention_days }}"
volumes:
- mautrix_instagram:/backup:ro
- {{ server.backup.folder }}/matrix:/archive
backup_mautrix_discord:
image: offen/docker-volume-backup:latest
restart: always
environment:
BACKUP_CRON_EXPRESSION: "{{ server.backup.cron_expression }}"
BACKUP_FILENAME: "{{ server.backup.filename_date_format }}-mautrix-discord.tar.gz"
BACKUP_LATEST_SYMLINK: mautrix-discord.latest.tar.gz
BACKUP_EXCLUDE_REGEXP: "\\.log$$"
BACKUP_RETENTION_DAYS: "{{ server.backup.retention_days }}"
volumes:
- mautrix_discord:/backup:ro
- {{ server.backup.folder }}/matrix:/archive
volumes:
db:
matrix: