Hi folks, regards documentation:
https://mailcow.github.io/mailcow-dockerized-docs/third_party-borgmatic/
I tried to set that but I have problem.
I set borgmatic configuration and docker-compose.override file:
I mount my local storage here in configuration.
borgmatic-mailcow:
image: b3vis/borgmatic
restart: always
dns: ${IPV4_NETWORK:-172.22.1}.254
volumes:
- vmail-vol-1:/mnt/source/vmail:ro
- mysql-socket-vol-1:/var/run/mysqld/:z
- /backup:/home/user/mnt/backup/backup
- ./data/conf/borgmatic/etc:/etc/borgmatic.d:Z
- ./data/conf/borgmatic/state:/root/.config/borg:Z
- ./data/conf/borgmatic/ssh:/root/.ssh:Z
environment:
- TZ=${TZ}
- BORG_PASSPHRASE=kC3hJ0fC3sV6dJ9w
networks:
mailcow-network:
aliases:
- borgmatic
I set config file at location data/conf/borgmatic/etc/config.yaml
location:
source_directories:
- /mnt/source
repositories:
- /home/user/mnt/backup/backup
retention:
keep_daily: 7
keep_weekly: 1
keep_monthly: 1
hooks:
mysql_databases:
- name: mailcow_db_name
username: mailcow_user
password: mysql_pass
options: --default-character-set=utf8mb4
I succesfully initiate repository with command:
docker-compose exec borgmatic-mailcow borgmatic init --encryption repokey-blake2
But when I run manually backup with command:
docker-compose exec borgmatic-mailcow borgmatic -v 2
I get error:
mysqldump: Got error: 2002: "Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (111)" when trying to connect
Command 'mysqldump --add-drop-database --user mailcow_user --default-character-set=utf8mb4 --databases mailcow_db_name > /root/.borgmatic/mysql_databases/localhost/mailcow' returned non-zero exit status 2.
I tried to connect to bormgatic container:
docker exec -it mailcowdockerized_borgmatic-mailcow_1 /bin/sh
I can see socket is mounted with this permissions:
-rw-rw---- 1 5000 5000 2 Aug 3 11:07 mysqld.pid
srwxrwxrwx 1 5000 5000 0 Aug 3 11:07 mysqld.sock
When I try to login to mysql from borgmatic container I get same error.