Docker 1.12 The Game Changer

By | July 31, 2016

It’s no secret that Docker and containers have been threatening to change the world for a while now. And they already have for some of us. But you know what… there’s always been something missing, something preventing it from taking off big style. Like a missing ingredient or something. Well it’s missing no more!

WARNING: I’m gonna say this right up front…. this is probably gonna end up being a bit of a Docker love fest. If you’re not game for that, feel free to head off somewhere else. I won’t cry. The problem is… this stuff is so game changing on the technical front that it’s actually pretty hard not to get carried away.

What was missing?

In a word…. orchestration.

Docker’s pretty much always been cool. And I mean that in game changing technology way. A way that can bring immense value to a business in things like; time to market, stability, agility, and resource utilization. Just to name a few.

But at the same time… containers have always been hard to manage at scale.

So in the past we’ve had to grab external tools like Docker Swarm, Kubernetes, or may be Mesosphere DCOS and layer them on top of containers in order to be able to manage this stuff at scale. And while that was fine, it really wasn’t.

And the reason it wasn’t fine was complexity. Every one of these tools brought additional complexity. Especially if you wanted to do things securely. As if security was an “option” anymore!

Anyway…… the way I see it there were three main problems:

1. Deploying and managing the infrastructure stuff (Docker engines) at scale
2. Deploying and managing the application stuff (containers) at scale
3. Doing it all securely

Enter Swarm Mode

Swarm mode

Tackling point number one….. Docker 1.12 introduces an entirely new mode of operation called Swarm Mode. This is where Docker engines automagically join together and work as a team at scale. This team is called a swarm.

But check this out… every swarm is secure by default! Seriously.

Oh and it’s embarrassingly simple to build and manage! It’s only two commands to configure a brand new swarm that’s fully secured with TLS and key rotation! Something that in the past was painfully hard, took a stupid amount of time, money, and effort. Believe me, I’ve done it and it was never pretty!

Well Swarm Mode does away with that with two blindly simple commands! 

Services

Another massive thing about swarm mode is the introduction of services.

So before services came along we deployed individual containers. If we had an app comprising 5 components we’d have a whole boat load of work to deploy them and manage them. Scaling was challenging and performing updates was more fun than it should’ve been.

Well all of that goes away with services.

With services we take that same app with 5 components, and define each component as a Docker Service. And it’s all declarative. This means we can tell Docker things like “hey make sure we’ve always got 5 containers backing my web front-end service” and Docker will go all out to make sure there’s always 5 containers backing your web front-end. Even when things fail. I’ll have some of that for a dollar!

But that’s not the end of it with services. Get a spike in demand, or predict a spike in demand? Well it’s a single simple command to instantly scale your service! 

Updates are a doddle too. Wanna change the version of an image your service is using…? Walk – in – the – park! Another simple command and your service is updated to the new version. 

But the same single command can make the update a rolling update. For example, take a service with 200 containers and update 20 containers at a time, and wait 15 minutes in between each batch of 20. 
Seriously…. this stuff is so easy even I can do it!

Final thoughts

I honestly fail to see how this is gonna be anything less than game changing. It’s just kicked aside the biggest technical hurdle to mainstream adoption of Docker at scale! It’s secure, it’s scalable, and it’s simple. Who doesn’t want that?!?!?!

Is it a kick where it hurts for the ecosystem? Hmmmm… kinda sorta. But let me explain….

I see this as a kick up the backside for the ecosystem, not a kick to the front! 

What’s the difference? Well a kick up the backside is more of a nudge for the ecosystem to up its game. There’s shed loads of talent and great products in the ecosystem. They just need to continue to get better.

And it’s not like the ecosystem wouldn’t have been expecting something like this from Docker, Inc. After all, as much as Docker want to develop an ecosystem of partners and the likes… they also want to continue to change the world themselves, not to mention turn a profit.

So in my opinion this is a kick to the backside for the ecosystem – albeit a firm one. But certainly not an all out sickening kick to the front :-S

Bonus

Wanna actually see what this all looks like and see how to do it yourself?

My latest Pluralsight course – Getting Started with Docker – covers it all. Plus more!

Sure… Pluralsight’s a subscription-based service. But you know what… they’ve ALWAYS got free trial periods if you’re not sure if wanna part with your hard earned cash. Go check it out, it’s my best course yet, on a technology that promises to be huge for your future career!

Thoughts and comments welcome.

6 thoughts on “Docker 1.12 The Game Changer

  1. Manuel Patrone

    Great course! Magic! šŸ˜‰
    I hope you’re planning a deep dive on 1.12…. are you?
    I also think a deep dive on the windows side of the equation would be very much appreciated. I know I would…
    Cheers

  2. Nigel Poulton Post author

    Hi Manuel.

    Thanks for taking the course.

    My thinking is currently a networking deep dive, and a security deep dive. I prefer making shorter courses like this one, ~2 hours or so.

    Would love your thoughts on that approach.

    I suppose I could do a Deep Dive on just swarm mode and the new internals since runc etc..

  3. Manuel Patrone

    Hi Nigel,
    I agree that “getting-started” courses should be kept around that duration. Although I wish that you’d have included more stuff on the windows side (nanoserver and hyperv containers). Just a suggestion…
    Having said that, I think that you should allow more time for “deep-dive” courses. At least for the level of detail I would love to get…
    As far as the division of topics: I would keep security as a separate topic. But the new swarm mode deserves a bit of detail beyond pure networking. Sure networking is a big part of it, but consider also adding the consensus stuff, the need for a kv store (compare and contrast it with K8s), schedulers, future pods, the cloud versions and so on…
    Consider also a host platform specialization. Of course currently most of the action happens on Linux. But when MS GAs there are a lot of windows-specific stuff to be covered.
    Hope that’s useful.
    Thanks,

  4. Nigel Poulton Post author

    Thanks Manuel.

    I think that’s probably a solid idea to expand the networking to a full-on Swarm Mode Deep Dive!

    Appreciate the input and feedback.

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You can add images to your comment by clicking here.