Ten tips for debugging Docker containers

Originally published at https://medium.com/@betz.mark/ten-tips-for-debugging-docker-containers-cde4da841a1d

Containers are awesome, but sometimes it can feel like your code has been shut up in a black box, stuck off in the cloud where you can’t see what it’s doing. When your app runs the way it’s supposed to this isn’t a problem: containers come, containers go, everyone’s happy. But then there’s that moment when you push a new version of your image and check the cluster status only to see it crashlooping. What’s going on? The CTO is pinging you on Slack, and you need answers. Here are ten tips for shining a light into your misbehaving containers.

Continue reading

Comparing Amazon Elastic Container Service and Google Kubernetes

Originally published at https://medium.com/@betz.mark/comparing-amazon-elastic-container-service-and-google-kubernetes-1c63fbf19ccd

If you work in software you’ve heard the words “containers” and “docker” often enough over the last couple of years. As with any real, substantive change there is good reason for the swell in attention. Containers are a huge leap forward in the deployment of software, and enough has been said about them that I won’t add to it here. Instead I’m going to talk about why containers alone are not enough, and then take a look at Amazon’s Elastic Container Service and Google’s Kubernetes, two platforms that aim to close the gap between “docker build” and “Yay it works!”

This piece doesn’t attempt to be a detailed hands-on review of either platform. While I have worked with Kubernetes daily for almost six months I have only been looking at Amazon for a week. That’s enough time to get the lay of the land, but not enough to develop the expertise for a deep dive. Instead I would like to give a high level comparison of the features and design trade-offs as I understand them, and perhaps it’s best to begin with what these platforms are, and why they exist at all.

Continue reading