Packaging Ports


In an earlier post I discussed how I created custom FreeBSD packages for my own files and software, so that I can install these quickly and reliably on new, or multiple, servers. This speeds up the deployment of new servers, and also avoids any mistakes I may make if I had to install all the pieces manually on each server.

For any FreeBSD ports which I use, I also create my own custom packages. Why do this? Many ports, like apache web server for example, require many options and modules to be selected during installation. It would be a waste of time, and possible error-prone also, to go through this on every new server. I therefore only install each port on my FreeBSD sandbox at home. When a port is installed with all the options I require, and any required dependencies, I can then make a package of this installation. This can then be copied to any server and installed in seconds. My home machine is a little Sony Vaio PCG-C1MHP, upgraded to a 'whopping' 384MB RAM. Without KDE, or any other bloatware, it runs just fine.

In a future post, I will show how I can use these packages, and my own custom packages, to 'clone' an existing production server in seconds. (I suspect that some reading this will have immediately have realised this was possible!!)

Only noticed now that I'd never finished this post, as I've been busy working on a little project. I will finish this very soon!