I'm a Symfony developer and need to deploy my website to multiple servers on DigitalOcean. The current tools and services aren't a good fit for my use case anymore, so I'm building Clustermin to help me automate my deployment tasks.
Deploying to multiple servers is a must for high availability. When one server is down, there's another server to continuously serve my website visitors. When I want to upgrade servers, e.g. from Ubuntu 20.04 to 22.04, or resize servers, I can just create new servers and delete the old ones.
|A web cluster with just 2 servers.|
So, let's get started.
First, create an account at Clustermin if you don't have one yet.
Next, create a cluster. A cluster is a group of similar servers that serve the same purpose. A web cluster consists of one or multiple servers with Nginx, and PHP8.1 FPM installed, ready to deploy your website.
|Create a new Web cluster|
Before connecting your servers to the newly created cluster, add a site first. A Site is your website/web app, or whatever you call it. Clustermin will store your files on /home/clustermin/yoursite.com/current.
|Create a new site. Yay free domain!|
|Set up a git repo and deploy script.|
|Create a server from DigitalOcean|
|Clustermin is doing something to your server.|
|If something breaks, better check the error logs.|
|Yay free SSL!|