I’m considering switching some of my server applications to Alpine Linux. Here’s why.
For years I’ve been using Ubuntu server for my Linux server applications. There isn’t really a need to move to something else, more of a desire to learn new things and improve my system administration.
I’d like to explore Red Hat Linux based server administration, like CentOS, because it is frequently used in business settings. I am also exploring options to use with older hardware and my own internal use.
I was reminded about Alpine Linux by DJ Ware in one of his videos. In another one of DJ Ware’s videos, he mentions a way of operating that really appeals to me: “One application, One machine”. By having a separate machine for each application, troubleshooting is minimised. One application having problems or going down is much less likey to affect other applications. Right now I have most of my business server applications running on one Dell server with dual Xeon cpus, with another app on a separate Dell Core 2 Quad cpu machine. I’d like to separate out each server app onto it’s own physical machine, including a separate backup server.
With my interest in older hardware, Alpine Linux is a stong contender because it doesn’t require the same system resources that Ubuntu Server or CentOS requires (though both should run okay on Core 2 Duo hardware and 4GB memory, depening on the application). Alpine Linux is small, runs on very little cpu and memory resources. My son and I installed it on his Raspberry Pi 1 and it felt very quick and reponsive, granted everything is text based and it should be.
Alpine Linux is very well maintained, as it is very popular for use within docker containers. Oddly enough, I want to use Alpine to move away from Docker containers and put individual machines back into use for each app.
The packages I want are available on Alpine. I use backuppc for my backup server, NextCloud for file syncing, calendar and other apps and SSH server for cloning system images with Clonezilla. For those, I can use Alpine Linux. For another dated Ruby On Rails custom web app, I will have to continue to use an older version of Ubuntu.
Alpine is very barebones in comparison to Ubuntu or CentOS server, but it is that way on purpose. So far, I’ve enjoyed the things that makes Alpine different and I think I’ll be more heavily using it as one of the tools in my Linux toolbox.