How to link Docker containers together

This is the third post in a series about moving my WordPress blog into the cloud using Docker. Blog Post Series Ansible for Server Provisioning WordPress and Docker the correct way How to link Docker containers together At this point we have a bunch of docker images, but no docker containers running. We will fix that in this post. We will look at docker-compose and how it orchestrates bringing up all of our docker containers.

WordPress and Docker the correct way

Blog Post Series Ansible for Server Provisioning WordPress and Docker the correct way How to link Docker containers together We now have a good foundation to build our WordPress site off of. Docker is installed and ready. We will quickly cover why Docker, some best practices, and finally the actual how of our Docker containers. Much like the previous post, this is not designed to be an introduction to Docker. There are literally thousands of intro to Docker articles and by the time I publish this that number will have doubled.

My talk on React

This is a talk I gave for a local Meetup about React. It is called ‘Why I like React’. I cover the basics of building React components. Then I spend some time talking about functional programming. Finally I wrap it all together to show how React is functional in nature. The final demo shows how to ‘think in React’. Presentation Slides Github Repo

A trip to Europe

I have been away for the last two weeks on a wonderful trip to Europe with my wife. The planning, the actual trip, and the recovery has slowed down the writing of my posts. I was hoping to have the Docker post done before I left, but it did not work out. This is not a travel blog, but I do want to note a few things I learned on our trip.

Great post about React

Removing User Interface Complexity, or Why React is Awesome This is a great post about React written by James Long. It explains why I love React better than I could myself. React makes thinking about your user interface incredibly simple. Data flows in and is rendered.

Ansible for Server Provisioning

This post became much longer than I had anticipated. There was going to be a section that covered the changes to WordPress that will make it get its configuration from the environment. That will now be in the next post. This means that you may have issues if you deploy a brand new install of WordPress following this post. It is a chicken and the egg situation. Ansible sets up docker, but the changes to WordPress rely on the docker configuration which is not setup yet, so either way steps would be missing.

A talk on building packages for Node.js

This is a talk I gave for a local Meetup about node.js. I cover building an Express-like package from scratch. It does not have all the features of Express and is not ready for production. It does show you how to build a package including testing. The example package is at The project in the video is at You may have to turn the volume up as it was recorded from the audience.

Demo video for Ansible and docker

I have created a short video where I demonstrate using Ansible and docker together. I create a new droplet and Digital Ocean and create a working copy of my blog about 7 minutes. The best part is that it is completely reproducible. I will cover everything in the video in depth over the next few weeks.

Moved my blog using Ansible and Docker

This blog has had a long and generally boring history. It started off on an old computer in my basement. This was in late 2011. I then needed to upgrade Ubuntu. This lead me to move the site into the cloud on Amazon EC2. It was a standard LAMP server running Ubuntu 12.04. That was three years ago and I needed to upgrade to the next Ubuntu LTS. To move to the new server I created an Ansible playbook to setup the server and Docker to run the site.

Book Preview (Building Scalable Apps with Redis and Node.js)

This has been adapted from the source to better fit my blog’s presentation and has a few typos fixed, which means that there are a few typos in the book :(. Using Socket.IO and Express together We previously created an Express application. This application is just the foundation. We are going to add features until it is a fully usable app. We currently can serve web pages and respond to HTTP, but now we want to add real-time communication.