# How to downgrade a Digital Ocean Virtual

**URL:** https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717
**Category:** Self-hosting
**Tags:** hosting
**Created:** [March 3, 2021, 5:59am UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717 "2021-03-03T05:59:45Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![csmu](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/csmu/32/124581_2.png) [@csmu](https://meta.discourse.org/u/csmu)
#### Post date: [March 3, 2021, 5:59am UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717/1 "2021-03-03T05:59:45Z")

</div>

How would you downgrade a Digital Oceans virtual server?

---

<div class="post-metadata">

### Author: ![dadberg](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dadberg/32/208954_2.png) [@dadberg](https://meta.discourse.org/u/dadberg)
#### Post date: [March 3, 2021, 6:16am UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717/2 "2021-03-03T06:16:29Z")

</div>

Your best route is to backup your discourse instance via admin dashboard, destroy the old droplet, launch new droplet, restore.

Or snapshot your current droplet, destroy it, create a disk from the snapshot, then attach the disk to a new downgraded droplet.

Don’t forget to downgrade the shared\_buffers and unicorns in your app.yml accordingly.

---

<div class="post-metadata">

### Author: ![Don](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/don/32/228726_2.png) [@Don](https://meta.discourse.org/u/Don)
#### Post date: [March 3, 2021, 6:50am UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717/3 "2021-03-03T06:50:11Z")

</div>

Hello,

There are more way to do this.

**You can do this in the DigitalOcean droplet panel. On the Resize tab.**  
After you set up the new parameters change the app.yml file like this ⬇

> [@About db\_shared\_buffers & unicorn\_workers](https://meta.discourse.org/t/about-db-shared-buffers-unicorn-workers/146603/2):
>
> db\_shared\_buffers should be no more than 25% of your system memory, which would be 1024MB, assuming that nothing else is running on that box. unicorn\_workers is two per core, so 4 is fine.

**The other way is create a new droplet. It is usefull if you want to change location or you want to downgrade the disk space also.**  
I’m not recommend to destroy the old droplet immediately. Just keep it while the new droplet run successfully.

1. Create a snapshot from the old droplet.
2. Turn off the old droplet.
3. Create a new droplet.
4. Change domain dns to the new droplet ip.
5. Restore snapshot to the new droplet.
6. Wait while the domain dns change to the new droplet ip.
7. Change app.yml like above.
8. Rebuild app.
9. Test your site.
10. If everything work. Destroy old droplet.

---

<div class="post-metadata">

### Author: ![geoff777](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/geoff777/32/202388_2.png) [@geoff777](https://meta.discourse.org/u/geoff777)
#### Post date: [March 3, 2021, 7:40am UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717/4 "2021-03-03T07:40:01Z")

</div>

You can use a floating IP to avoid any downtime switching droplets.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [March 3, 2021, 12:39pm UTC](https://meta.discourse.org/t/how-to-downgrade-a-digital-ocean-virtual/181717/5 "2021-03-03T12:39:42Z")

</div>

That’s what I’d do, as it means your don’t have to wait for dns for the transition.

See [Move your Discourse Instance to a Different Server](https://meta.discourse.org/t/move-your-discourse-instance-to-a-different-server/15721). You can copy over the let’s encrypt certificate for zero downtime.

After you set up the new server, put the old one in read only mode, backup, restore to the new server, switch the ip to the new one.

You can save some time by using rsync to move the assets and doing a database only backup. Also, you can save the step of moving the backup if you backup to S3. Spaces is totally fine for backups.
