Devops

Exposing your Docker API

As I wrote some weeks ago in “How to live inside a docker container?”, when you pass a docker socket to your container, you’re essentially enabling the container full access to your Docker host OS. This means that you can create containers, pull images, or more destructively - stop and delete containers and images.

Read more

Deploying Go applications with Docker

When dealing with a new language, if it’s migrating from PHP to Node, or if it’s your first time trying out Go, you eventually get to the point when you have to think about how you will use your new application in production. How you will deploy it, how you will run it, and how you will make sure that it’s running well. I’m a big advocate od Docker, let me show you why.

Read more

Debugging Docker network connectivity

A few weeks ago I wrote a short article, networking basics with docker. Since then, I’ve migrated my production environment to be docker only, and I’ve deployed 5 docker hosts which handle various tasks, from a production file server, search server with solr, my complete development environment and some websites (including this one!).

Over the course of a week I was hitting a few timeouts in connecting from one docker container to another, and finally, yesterday I consistently pinpointed a 4+ second delay on an API service I was writing. Four seconds. I’ll go over the steps that I took to diagnose and resolve the issue.

Read more

How to live inside a docker container?

This is a story of how I learned to stop worrying and love the bomb. Well, it’s just about as iconic. Lone developer turns to Docker to set up a clean development environment as seamlessly as possible, including the bells and whistles of SSH agent forwarding. I’m pretty sure some of the folks on Docker HQ might have a small panic attack reading this one. Alas, I’m not a cardiac health professional.
Read more