1

I work within a small dev team and our current infrastructure is setup with GitHub for code, CircleCI to deploy these to our DigitalOcean Ubuntu droplets whenever something is merged into the develop branch (goes to Develop server) and master branch (goes to the Prod server).

It is becoming far too time consuming to spin up 2 new servers per product all the time and configure them into web servers. I've already transferred databases to the Managed DB cluster to save time. Is there a more efficient way to do this instead of having to spin up a new droplet, install everything and configure everything and do updates and sort out SSH and permissions and etc. etc.

I've now got about 8 droplets (more cloud products on the way!) and I just don't have the time to keep visiting all these droplets to sort out or add something or update something.

I'm mainly looking to be pointed in the right direction for which I can research further and read about. It looks like automating the majority of this is possible but I don't know how to proceed as there's a lot of confusing and conflicting information on which services to use.

Sherry
  • 11
  • 1

1 Answers1

0

The keywords you are looking for are infrastructure as code and configuration management.

Use an infrastructure as code tool like Terraform to deploy resources in Digital Ocean, use an configuration management tool like Ansible to configure your VMs (configuring application, ssh access, etc.). Depending on the complexity of the configuration it could also be an option to skip configuration management and use snapshots made by hand or with the help of a tool like Packer.

Henrik Pingel
  • 8,676
  • 2
  • 24
  • 38