A Docker image that wraps mariadb-dump/mysqldump and rsnapshot to provide a drop-in solution for periodic snapshots of MariaDB/MySQL databases with automated rotation and retention.
The primary goals of docker-mariadb-snapshot are reliability, simplicity, and ease of use.
Read the Full documentation
- Quick Start Guide - Get started in 5 minutes
- Configuration Reference - Complete environment variable guide
- Docker Compose Examples - Sample configurations for all modes
- Kubernetes Deployment - CronJob configurations
- Running Tests - Developer testing guide
Run a simple snapshot:
docker run --rm \
-e DB_HOSTNAME=mysql.example.com \
-e DB_USER_NAME=snapshot_user \
-e DB_USER_PASSWORD=secure_password \
-e DB_DATABASES=myapp \
-v /output/path:/data \
jacobsanford/docker-mariadb-snapshot:1.x hourlyAdd this service to your docker-compose.yml:
services:
[...]
mariadb-snapshot:
image: jacobsanford/docker-mariadb-snapshot:1.x
restart: "no"
environment:
DB_HOSTNAME: mysql
DB_DATABASE: myapp
DB_USER_NAME: root
DB_USER_PASSWORD: changeme
volumes:
- ./snapshots:/dataRun snapshot: docker compose run --rm mariadb-snapshot daily
This project is licensed under the MIT License. See the LICENSE file for details.
