Atomic Smash homepage splash

Thinking about using Docker?

Words by Colin GoodmanFebruary 21, 2018

What is Docker?

Docker is a software technology aimed at making it easier to create, deploy and run applications by using containers. These containers allow a developer to package up an application with all of the parts it needs, such as libraries and other dependencies, and ship it all out as one package.

It was released in March 2013 and quickly became an alternative to Vagrant, with various development teams preferring its containers-based approach over the virtual machine method utilised with Vagrant.

Here at Atomic Smash we use Laravel Homestead for our WordPress development which uses Vagrant, but with Docker becoming ever increasingly popular we are looking into the possibility of using Docker in the future.

When working in a team environment any introduction of using a new technology is a big decision and one that needs to be discussed internally before being implemented. There needs to be a discussion on how Docker would improve our development process and what benefits it would bring, listed below are some of the benefits of using Docker:

  • Fast boot up time when starting a container.
  • Eliminates the “Works on my machine” situation meaning whoever accesses a container, that container will work identically on all computers that its started on.
  • Containers use less of your computers resources.
  • Docker is documented really well.

However, like other good technologies there are some disadvantages with using Docker, such as:

  • When compared to using Vagrant, it is harder to setup initially.
  • Networking in containers can be tricky when limiting access within containers.
  • Isolation as the containers don’s use the same kernal, they are not 100% isolated.

Docker Compose

Compose is a tool for defining and running multi-container Docker applications. This tool can be used to run a WordPress isolated environment built with Docker containers, which is a tool that we will be investigating if we ever decide to use Docker as part of out development process.

You can get a WordPress site setup locally in about 4 to 5 steps using Docker Compose which is pretty cool, you can view the Compose documentation to learn how to do this.

Summary

The more I read on Docker the more intrigued and interested I am in using it within my development. However, I also appreciate how good Vagrant is and what it’s good at, so for me I think I would have to use Docker a lot more than I currently am to fully commit to it.

Docker aside, if you’re interested in reading about local development tools for WordPress go on and read “The best tools for working locally on WordPress”.

Profile picture of Colin Goodman

Colin Goodman

Colin works very closely with David and Ben on the front end development aspects within projects. He has an exceptional eye for detail and is constantly looking at new ways to code websites with the latest technologies available.

Go back to top

Keep up to date with Atomic news