Digital Ocean - Cloning a Production Droplet to a Staging Server

That is the general procedure for deploying a clone on DigitalOcean. Did you want to maintain the same IP between the staging server and production? If this is the case Power down and snapshot but destroy the old droplet before deploying the new one. When you bring the new droplet up it will renew the same IP lease. Note this only works if your deploying the production server in the same region as your staging server. If you want a new IP for production don't destroy the staging droplet before deploying :)

Hope this helps

Dylan


As of June 2016 there exist an option to create your snapshot without turning the droplet off first. It was announced in numerous places.

There is a downside of course. Taking snapshot in a dynamic state of your database will probably result in loss or inconsistency of data, that there were being processed at the moment the snapshot was taken. User jtittle1 presents his/her finding about the issue in this comment on DigitalOcean forums.

In general, it seems that if you want to clone your droplet for testing or staging purposes, or there are no writings to the database at the moment (or there is no database), live snapshot is probably the way to go. I will test this functionality in order to check how my droplet will react after kernel update related to Meltdown/Spectre issue.

Update: I created a new test droplet made of a live snapshot from a to-be-upgraded server. Then I tested whether services and apps work after this upgrades and reboots. All went well, so I applied the changes to the production server. I recommend this approach and will continue following this method in future important upgrades (kernel, OS etc.).