Mirror for Volume backups
Go to file
Mohamed Sohail e67e117217
fix: typo
2021-12-08 17:48:43 +03:00
.github/workflows fix: typo 2021-12-08 17:48:43 +03:00
cmd/DigitalOceanSnapshotter logs: enable level 2021-12-08 17:41:32 +03:00
.dockerignore chore(Docker): add docker support 2021-02-04 00:30:37 +01:00
.gitignore Initial commit 2021-02-01 22:37:04 +01:00
Dockerfile build: trigger 2021-12-08 17:39:34 +03:00
LICENSE.md Initial commit 2021-02-01 22:37:04 +01:00
README.md docs: fork info 2021-12-08 17:38:11 +03:00
go.mod docs: fork info 2021-12-08 17:38:11 +03:00
go.sum major: remove slack context 2021-12-08 17:36:38 +03:00


Fork Info: Removed Slack Context

DigitalOcean Snapshotter

Docker Pulls

Simple Digital Ocean Volume Backup Service using Snapshots

Getting Started

This Service is supposed to be run as a CronJob every x hours, The recommended way is using the Docker image from topgg/digitaloceansnapshotter.

It requires following enviroment variables to be set:

DO_TOKEN - Digital Ocean Access token

DO_VOLUMES - List of Digital Ocean volume ids seperated by a comma

DO_SNAPSHOT_COUNT - Amount of snapshots to keep for each volume


Go 1.15


This was designed for usage in Kubernetes but it can technically be run anywhere, an example Kubernetes CronJob manifest running every day could look like this

apiVersion: batch/v1beta1
kind: CronJob
  name: DigitalOceanSnapshotter
  schedule: "0 0 * * *"
            - name: DigitalOceanSnapshotter
              image: topgg/digitaloceansnapshotter
                - configMapRef:
                    name: your-config-map-name
          restartPolicy: OnFailure

Note that this uses the latest image which you shouldn't do in prod, use a tag version or commit hash instead

Built With

  • Godo - DigitalOcean V2 API client library
  • Logrus - Logging framework used
  • Slack-Go - Slack API client library


We use SemVer for versioning. For the versions available, see the tags on this repository.


  • DevYukine @ Top.gg - Initial work - DevYukine

See also the list of contributors who participated in this project.


This project is licensed under the MIT License - see the LICENSE.md file for details