Commit
502080541a
1 geänderte Dateien mit 41 neuen und 0 gelöschten Zeilen
|
@ -1,5 +1,7 @@
|
||||||
### Backup
|
### Backup
|
||||||
|
|
||||||
|
#### Manual
|
||||||
|
|
||||||
You can use the provided script `helper-scripts/backup_and_restore.sh` to backup mailcow automatically.
|
You can use the provided script `helper-scripts/backup_and_restore.sh` to backup mailcow automatically.
|
||||||
|
|
||||||
Please do not copy this script to another location.
|
Please do not copy this script to another location.
|
||||||
|
@ -30,3 +32,42 @@ To run a backup unattended, define MAILCOW_BACKUP_LOCATION as environment variab
|
||||||
```
|
```
|
||||||
MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all
|
MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Cronjob
|
||||||
|
|
||||||
|
You can run the backup script regularly via cronjob. Make sure `BACKUP_LOCATION` exists:
|
||||||
|
|
||||||
|
```5 4 * * * cd /opt/mailcow-dockerized/; MAILCOW_BACKUP_LOCATION=/mnt/mailcow_backups /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3
|
||||||
|
```
|
||||||
|
|
||||||
|
Per default cron sends the full result of each backup operation by email. If you want cron to only mail on error (non-zero exit code) you may want to use the following snippet. Pathes need to be modified according to your setup (this script is a user contribution).
|
||||||
|
|
||||||
|
This following script may be placed in `/etc/cron.daily/mailcow-backup` - do not forget to mark it as executable via `chmod +x`:
|
||||||
|
|
||||||
|
```
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Backup mailcow data
|
||||||
|
# https://mailcow.github.io/mailcow-dockerized-docs/b_n_r_backup/
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
OUT="$(mktemp)"
|
||||||
|
export MAILCOW_BACKUP_LOCATION="/opt/backup"
|
||||||
|
SCRIPT="/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh"
|
||||||
|
PARAMETERS="backup all"
|
||||||
|
OPTIONS="--delete-days 30"
|
||||||
|
|
||||||
|
# run command
|
||||||
|
set +e
|
||||||
|
"${SCRIPT}" ${PARAMETERS} ${OPTIONS} 2>&1 > "$OUT"
|
||||||
|
RESULT=$?
|
||||||
|
|
||||||
|
if [ $RESULT -ne 0 ]
|
||||||
|
then
|
||||||
|
echo "${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:"
|
||||||
|
echo "RESULT=$RESULT"
|
||||||
|
echo "STDOUT / STDERR:"
|
||||||
|
cat "$OUT"
|
||||||
|
fi
|
||||||
|
```
|
||||||
|
|
Laden …
In neuem Issue referenzieren