Newer
Older
version: "2.1"
services:
backup_owncloud:
build:
context: .
dockerfile: Dockerfile-mysql
image: filament/duplicity:mysql
hostname: {{ inventory_hostname_short | lower | regex_replace('_','') }}-owcnloud
environment:
DST: "swift://owncloud_{{ inventory_hostname|lower }}"
MYSQL_DATABASE: {{ cloud_db_user }}
MYSQL_USER: {{ cloud_db_user }}
MYSQL_PASSWORD: {{ cloud_db_pass }}
MYSQL_HOST: db
PASSPHRASE: "{{ cloud_backup_pass | default(cloud_db_pass) }}"
SWIFT_USERNAME: "{{ swift_cloud_username }}"
SWIFT_PASSWORD: "{{ swift_cloud_password }}"
SWIFT_AUTHURL: "{{ swift_cloud_authurl }}"
SWIFT_AUTHVERSION: {{ swift_cloud_authversion }}
SWIFT_TENANTNAME: "{{ swift_cloud_tenantname }}"
SWIFT_TENANTID: "{{ swift_cloud_tenantid }}"
SWIFT_REGIONNAME: "{{ swift_cloud_regionname }}"
JOB_300_WHAT: "mysqldump -h $$MYSQL_HOST -u $$MYSQL_USER -p$$MYSQL_PASSWORD $$MYSQL_DATABASE --result-file='$$SRC/mysql_$${MYSQL_HOST}_$$MYSQL_DATABASE.sql' && dup full $$SRC $$DST && rm '$$SRC/mysql_$${MYSQL_HOST}_$$MYSQL_DATABASE.sql'"
JOB_300_WHEN: "weekly"
JOB_302_WHAT: "dup remove-all-but-n-full 5 --force $$DST $$@"
JOB_302_WHEN: "weekly"
volumes:
- owncloud_owncloud:/mnt/backup/src/owncloud:z
- ./owncloud:/backups
networks:
- owncloud_default
- public
command:
- /etc/periodic/weekly/jobrunner
networks:
owncloud_default:
external: true
public:
driver_opts:
encrypted: 1
volumes:
owncloud_owncloud:
external: true