mysql-cron-backup
MySQL/MariaDB database backup using cron task manager.
Directory Structure
- .env
- docker-compose.yml
docker-compose.yml
version: "2"
services:
mariadb:
image: mariadb:10
container_name: my_mariadb
expose:
- 3306
volumes:
- data:/var/lib/mysql
- ${VOLUME_PATH}/backup:/backup
environment:
- MYSQL_DATABASE=${DATABASE_NAME}
- MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD}
- MYSQL_ALLOW_EMPTY_ROOT_PASSWORD=yes
restart: unless-stopped
healthcheck:
test: ["CMD", "healthcheck.sh", "--su-mysql", "--connect"]
timeout: 5s
retries: 10
backup:
build: .
image: fradelg/mysql-cron-backup
depends_on:
mariadb:
condition: service_healthy
volumes:
- ${VOLUME_PATH}/backup:/backup
environment:
- MYSQL_HOST=my_mariadb
- MYSQL_USER=root
- MYSQL_PASS=${MARIADB_ROOT_PASSWORD}
- MAX_BACKUPS=1
- INIT_BACKUP=1
- CRON_TIME=0 0 * * *
restart: unless-stopped
volumes:
data:Resources
GitHub: https://github.com/fradelg/docker-mysql-cron-backup
Docker Hub: https://hub.docker.com/r/fradelg/mysql-cron-backup
Configuration: https://github.com/fradelg/docker-mysql-cron-backup#usage