Backup to s3 compatible block storage
2.6K
Docker container that periodically backups files to S3-compatible pithos storage using s3cmd sync and cron.
docker run -d [OPTIONS] pozylon/backup-to-s3
-e ACCESS_KEY=<AWS_KEY>: Your AWS key.-e SECRET_KEY=<AWS_SECRET>: Your AWS secret.-e PITHOS_HOST=<PITHOS_HOST>: Your custom block storage endpoint.-e S3_PATH=s3://<BUCKET_NAME>/<PATH>/: S3 Bucket name and path. Should end with trailing slash.-v /path/to/backup:/data:ro: mount target local folder to container's data folder. Content of this folder will be synced with S3 bucket.-e PARAMS="--dry-run": parameters to pass to the sync command (full list here).-e DATA_PATH=/data/: container's data folder. Default is /data/. Should end with trailing slash.-e 'CRON_SCHEDULE=0 1 * * *': specifies when cron job starts (details). Default is 0 1 * * * (runs every day at 1:00 am).no-cron: run container once and exit (no cron scheduling).Run upload to S3 everyday at 12:00pm:
docker run -d \
-e ACCESS_KEY=myawskey \
-e SECRET_KEY=myawssecret \
-e S3_PATH=s3://my-bucket/backup/ \
-e PITHOS_HOST=some.blockstorage.com \
-e 'CRON_SCHEDULE=0 12 * * *' \
-v /home/user/data:/data:ro \
pozylon/backup-to-s3
Run once then delete the container:
docker run --rm \
-e ACCESS_KEY=myawskey \
-e SECRET_KEY=myawssecret \
-e S3_PATH=s3://my-bucket/backup/ \
-e PITHOS_HOST=some.blockstorage.com \
-v /home/user/data:/data:ro \
pozylon/backup-to-s3 no-cron
Run once to delete from s3 then delete the container:
docker run --rm \
-e ACCESS_KEY=myawskey \
-e SECRET_KEY=myawssecret \
-e PITHOS_HOST=some.blockstorage.com \
-e S3_PATH=s3://my-bucket/backup/ \
pozylon/backup-to-s3 delete
Content type
Image
Digest
Size
137.5 MB
Last updated
about 10 years ago
docker pull pozylon/backup-to-s3