Roxy Pony's blog

Only fresh pony stuff


June 03, 2015 / by Guillaume Petit

Shipping with Docker

We don’t manage big farms of servers at roxypony, but from time to time, we have to move to a new one to keep up with the always evolving hardware of computers. So basically, we re-isntall a new server running a bunch of services like:

  • apache
  • mysql
  • redis
  • postfix
  • mongo

We installed all our services either through apt-get or from original sources. Nonetheless, that was not automatized at all, and each time we upgraded our hardware we are hit with the same pain of re-installing everything; doing all sort of strange prayers to not make any mistake in the process, otherwise we would end up increasing the downtime of our services.

Introducing Docker

Docker is an open platform for developers and sysadmins of distributed applications.

The idea behind docker is that you build images that you will run as container, one next to the other, managed by the docker engine. Once you have setup an image (for you database for example), you can run this image as a container any number of times on the same machine.

The good part it that you will never install any package directly on your server, it’s done for you through your Dockerfile, where you script and virtualize your installation. This way, the next time we will move to another server, we will just install docker on it, build all our images, and run them without going through all the installation and configuration process!

And trust me, that’s amazing!

I strongly encourage you to take a look into this tool if you manage your own server. And once your are done configuring a service, you are done for good!