Visit site

A command-line snapshot maker for your DigitalOcean droplets. Fully Automated. Multi-threaded.

A command-line snapshot maker for your DigitalOcean droplets. Fully Automated. Multi-threaded.

Was this helpful?

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

By far my favorite tool. First commit on GitHub was in July of 2014, so it’s relatively new and seems to work very well.

I love that it starts droplets back up when it’s done taking the snapshot.

This is the only tool I use to make snapshots.


I love this tool! Great work, but im struggling getting it to work with crontab -e

So if I run: do_snapshot --only DROPLETID --keep 10 --clean --trace --digital-ocean-access-token KEYHERE

then everything works fine, however if I try running it in crontab -e: 0 3 * * 2,3,7 do_snapshot --only DROPLETID --keep 10 --clean --trace --digital-ocean-access-token KEYHERE

Then it executes in CRON (according to syslog) but it doesnt show any errors other than :no mta installed discarding output. So I really dont see why it doesnt work.

I tried including the method to send output to email, but wasnt able to get that work either (Got some errors with google smtp).

In addition I have “disabled” root and are using SSH key instead. But when editing crontab I use sudo crontab -e

Are you able to understand what I am doing wrong?


Now that snapshots can be created without shutting down a droplet, what changes need to be made to DOsnapshot?

Now it works on API V2 Too.

Great tool. Thanks!

Hi, After creating snapshot with doSnapshot, how can I automatically transfer the snapshot to a different region then remove it from the source region?

This makes disaster recovery much better since the snapshots are kept in a different region than the droplet.

Would you consider adding that feature? :)

Good morning, I have used your tool for more than a year so far with only occasional hiccups. Thank you so much for that. However starting a week ago I am having problems. I am using the following command:

do_snapshot --only $HSET_IN $SRITONI_WS1 --keep 2 -c -v -p 2 --stop-by-power

And I get the following error:

Shutting down droplet. Droplet id: xxxxxxx is Failed to Power Off. DoSnapshot::DropletShutdownError

Actually the droplets were powered off but the script is unable to synchronize with this apparently?

Any help would be appreciated.

Also, I would like to donate and so can you please setup a paypal?



Most useful and elegant tool that I can find to do this! Bravo and many thanks. To properly work I am having to add option -d 30 or else the script comes out claiming that droplet not powered off!

ok, which version of do_snapshot? and which version of ruby you have, or installation type?

Hello, can you post your full log? To get it just run do_snapshot with -v option.

Publish your Tool on Community

Have you created an Integration, API Wrapper, Service, or other Tool that helps developers build on DigitalOcean? Help users find it by listing it in Community Tools.

Featured on Community

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel