A small docker image to backup a Mysql database to Selectel cloud storage
-
SCHEDULE : cron job string (ex. * * */5 * *)
-
MYSQL_HOST : Hostname of mysql database.
-
MYSQL_USER : Username to connect to mysql database.
-
MYSQL_PASSWORD : Password to connect to mysql database.
-
MYSQL_DATABASE : Database name
-
SELECTEL_USER: Username to connect to Selectel cloud storage.
-
SELECTEL_PASSWORD: Password to connect to Selectel cloud storage.
-
SELECTEL_DEST: Destination directory or container name in Selectel cloud storage.
-
MAIL_DISABLED: Disable email notifications. If set to "YES", all other mail parameters are ignored.
-
MAIL_SERVER: Mail server (ex. smtp.yandex.ru:465)
-
MAIL_USER: Mail user (ex. "alert@yandex.ru")
-
MAIL_PASS: Mail password
-
MAIL_USE_TLS: (YES or NO) Whether to use TLS.
-
MAIL_FROM: Notification sender name
-
MAIL_RECIPIENT: Email for notifications
-
MAIL_SUCCESS: (YES or NO) Whether to send "success" notifications.
In docker-compose.yml:
version: '2'
services:
backup:
image: boodkb/mysqldump-selectel
volumes:
- "/etc/localtime:/etc/localtime:ro"
environment:
SCHEDULE: "*/5 * * * *"
MYSQL_HOST: mysql
MYSQL_USER: root
MYSQL_PASSWORD: db_password
MYSQL_DATABASE: db_name
SELECTEL_USER: selectel_user
SELECTEL_PASSWORD: selectel_password
SELECTEL_DEST: container_name
MAIL_SERVER: smtp.yandex.ru:465
MAIL_USER: "alert@yandex.ru"
MAIL_PASS: mail_password
MAIL_USE_TLS: "YES"
MAIL_FROM: "sender name"
MAIL_RECIPIENT: recipient@gmail.com
MAIL_SUCCESS: "YES"
# MAIL_DISABLED: "NO"