Public | Automated Build

Last pushed: 2 years ago
Short Description
Allows mysqldump from docker cron job.
Full Description


This container can be used to periodically backup MySQL, MariaDB, and MariaDB Galera cluster instances.

Example usage which will backup the database every day at 03:00. You can check the last run with the integrated HTTP server on port 18080:

docker run -d \
-v /var/backups:/var/backups \
-p 18080:18080 \
-e TIMEZONE="Europe/Berlin" \
-e SCHEDULE="0 0 3 * *" \
-e BACKUP_METHOD="mysqldump" \
-e BACKUP_OPTS="-u root -p test -h" \

Available backup methods


Backups a MySQL/MariaDB database via mysqldump.

Example standalone run:

docker run -i -t --rm \
-v /var/backups:/var/backups \
hauptmedia/mariadb-backup \
backup-mysqldump \
-u root -p test -h
Usage: /usr/local/bin/backup-mysqldump -u mysqluser -p mysqlpassword -h mysqlhost

  -u  Specifies the MySQL user (required)
  -p  Specifies the MySQL password (required)
  -h  Specifies the MySQL host (required)
  -P  Specifies the MySQL port (optional)
  -d  Specifies the backup file where to put the backup (default: /var/backups/CURRENT_DATETIME_MYSQLHOST_mysqldump)


Backups a galera cluster via a remote connection using xtrabackup-v2 sst method.

It creates a listening socket for receiving the state snapshot transfer
and launches a galera arbitrator which connects to the cluster, triggers
a state snapshot transfer and disconnects from the cluster.

Please note: The donor cluster node must be able to connect to
the listen address (which may be specified using the -l option)

Example standalone run:

docker run -i -t --rm \
-v /tmp/mysqlbackup:/var/lib/mysql \
hauptmedia/mariadb-backup \
backup-galera-xtrabackup-v2 \
-a gcomm:// \
-g MyClusterName 
Usage: /usr/local/bin/backup-galera-xtrabackup-v2 -a gcomm://ip:4567,ip:4567 -g MyClusterName

  -a  Specifies the galera cluster address (required)
  -g  Specifies the galera cluster name (required)
  -l  Specifies the ip and port where to listen for the state snapshot transfer (default: public-ip:4444)
  -d  Specifies the data directory where to put the backup (default: /var/lib/mysql)
  -n  Specifies the donor node which should be use (optional)
Docker Pull Command
Source Repository