Simplifies setting up backup for docker containers
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
Dockerfile Adding backup on-demand Mar 15, 2018
README.md Adding backup on-demand Mar 15, 2018
backup.sh Adding backup on-demand Mar 15, 2018
cron-backup.sh Adding backup on-demand Mar 15, 2018
restore.sh Fixing backup dir Sep 29, 2017

README.md

CRON docker image available as openmrs/cron-docker

It tars directories DIR1, DIR2, etc. defined in the DIRS environment variable in the format DIR1:NAME1,DIR2:NAME2,... under /backup/NAME1-Y-m-d_H-M-S.tar.gz by defined SCHEDULE.

Example of use with docker-compose:

  backup:
    image: openmrs/cron-backup:latest
    depends_on:
      - api
    volumes:
      - mongo_data:/mongo_data
      - solr_data:/solr_data
      - ${BACKUP_DIR-./backups}:/backup
    environment:
      - DIRS=/mongo_data:mongo,/solr_data:solr
      - SCHEDULE=0 0 * * *
    restart: always
    healthcheck:
      test: "exit 0"

In order to backup on-demand run:

docker-compose run --rm backup bash backup.sh

In order to restore backups from the BACKUP_DIR run:

docker-compose run --rm backup bash restore.sh 2017-09-27_00-00-01

It's also possible to call scripts:

  backup:
    image: openmrs/cron-backup:latest
    volumes:
      - scripts:/scripts
    environment:
      - SCRIPT=/scripts/my_backup_script.sh
      - SCHEDULE=0 0 * * *
    restart: always
    healthcheck:
      test: "exit 0"