Back From DockerCon17 US: The Best of Austin

Back From DockerCon17 US: The Best of Austin


It's hard to put into words the amazing community DockerCon brings together. It was my 2nd DockerCon US and it's the most diverse and friendly conference I've seen at that size (5,500 people). Everyone there just wants to use containers to solve problems and go faster, and with the heart of open source, it creates a positive sharing and learning culture that's hard to beat.

It's hard to put into words the amazing community #DockerCon brings together
Tweet This

Here's my TL;DR on the major topics

LinuxKit and Moby Project

LinuxKitMoby Project

You may have already heard about these, so I won't rehash the basics that others already said well, like Docker Captain Alex's boot linuxkit in 10 minutes and Docker Captain John's thoughts on motivations behind the Moby Project. Bottom line is if you're a docker user... that is, you are someone who uses the docker products to get your work done (docker cli, compose, machine, swarm, etc.) then these projects, while super cool, don't really affect you... yet.

These projects are about pulling the core pieces of Docker apart so "system builders" can make custom bootable Linux distributions and custom container-management tools that are different then the one's Docker already provides.

Docker is splitting up components into smaller, focused, open source "projects" in and will use those to create the downstream Docker "products" like Docker for Linux/Mac/Windows. Here's what Docker has to say about Moby Project vs. Docker and what is LinuxKit.

Moby Projects vs Docker Products

If you like Docker's tools and just want to learn more about them, then skip LinuxKit and Moby Project repos, which won't affect how you use Docker today, and do something like watch DockerCon's playlist on YouTube or take my Docker Mastery course on Udemy. 🤓

Multi-Stage Dockerfile Builds

I had actually heard about this weeks earlier but I didn't understand the use case until the Keynote. The announcement on Day 1 made it stick, and I got excited!

The Gist is, your images are likely "build environments" with all sorts of tools you don't need to run in production, but are needed in the image at docker build time. Some, have got around this with CI automation that moves things between images but what a pain!

Now you can have multiple stages in a single Dockerfile where your first stage uses all your build, package, and prep tools, and then a later stage will copy the important outputs to a smaller image that only has what's needed for container runtime.

Watch the #DockerCon Keynote demo on how using multi-stage #docker image builds can reduce final image size and attack surface
Tweet This

Also, here's Docker Captain Stefan showing how to do the same thing on Windows Containers.

MTA Kit: "Modernize Traditional Apps"

Docker Inc. announced a partnership with Microsoft, Cisco, HPE, and Avanade to help ops teams with traditional apps migrate them to containers in 5 days! The goal is to containerize existing apps for agility and other container benefits without changing source code. You can get a learning kit on this program at

Moby Project Internals Summit

After DockerCon was a full-day Moby Project Internals Summit. We dove into the components of what make up Docker CE/EE (which are now moving to Moby Project) and what their future might hold.

InfraKit: The Always On Terraform++

InfraKit was released at the Berlin Docker Internals Summit in fall of 2016, but even though it has some nice features I didn't get the vision of where the team wanted to take it.

Now, thanks to David Chung, that's all changed and it's one of my top projects to watch for 2017/2018.

I will be writing about this later and showing some examples, but TL;DR is "a highly-available always-on service that monitors container/swarm infrastructure and responds to changes based on a declarative design". Build out your AWS/Azure/DigitalOcean servers using common commands, and then InfraKit can self-heal the infrastructure.

SwarmKit: This Is Just The Beginning of Built-In Orchestration

Since the day it was released mid-2016, I've been a fan of SwarmKit and Docker Services. Their first "use case" was around stateless long-running services, but as the team continues to mature the features, more use cases are being approached. Discussions with maintainers happened around ways to solve the Layer 7 HTTP Proxy problem, batch-job and short-running container solutions.

While those things are likely later this year or next, some things that were just recently added or are likely being added this summer include:

  • full featured service update rollback with health monitoring and lots of dials to tweek
  • docker service logs have graduated experimental and avail in 17.05 for multi-host log aggregation at the cli
  • Docker configs are coming, similar to secrets, will allow us to store config files and values in the raft db. Soon you'll be able to use the default nginx image and inject a config file at runtime!

Also see Docker Captain Alex's Top 5 Swarm Tutorials.

Get Resources for My Sessions

I gave a talk on the Journey to Docker Production and a 1/2 day workshop on Advanced Orchestration. I put all those resources on this page.

Top 8 Sessions

We all voted on our favorite breakout sessions and then on the last day of DockerCon, the top 8 were repeated! Watch them all here.

Moby Cool Hacks

A DockerCon tradition... Docker holds a competition for the coolest hack you can do with Docker tools, and this year did not disappoint. Winners get to present on stage at the end of day 2 and we had repeat Winner's Jonathan Leibiusky and Marcos Nils who created, and then Alex Ellis showed of Functions-As-A-Service on Swarm. Get the details on their hacks and then watch the video of their demos to thousands of people live.

A Docker Noob's Take On DockerCon

Last but not least, I met up with Chloe Condon from Codefresh at DockerCon and she couldn't have been more excited to be there. Her story is fun and full of great people and memories.