Docker has been celebrating its 4th birthday all over the world with meet-up groups having parties, birthday cakes, stickers and open events for learning about containers.
You can follow Tweets and pictures via the #dockerbday hashtag.
I went along to the London meet-up as a Docker Captain and mentor and several other developers from the office joined me too.
Ali Shaw from HPE was hosting the event at their head-office in the City and put on the drinks. It was an impressive office and a great venue for a large meet-up. Ben Hall who has been running the meet up for 12 months worked with sponsors to provide food and snacks. All that was left was for people to arrive and start learning Docker through the on-line labs.
As soon as I put a Docker mentor badge on people started asking me questions about networking, CI, security, Windows and everything in-between.
This was great and showed how keen people were to understand how to apply Docker to their workflows.
Here's a key question that came up about getting containers to talk to each other:
- What's the difference between links, Docker Compose and Stacks?
One thing that I think everyone notices with Docker is that the project keeps innovating and finding new, more efficient ways to solve problems.
Linking was the original way to have multiple containers talk to each other. I wrote in detail about it in my Hands-on Docker Labs tutorial about 12 months ago. Links involved complex command-line arguments and environmental variables - it did the job but we have better alternatives now.
Docker Compose which is written in Python originated as a tool called Fig and grew in popularity until the project was acquired by Docker. Compose and Docker grew together and was widely used to deploy inter-connected containers in development environments. Some people even used it in production or in combination with the pre-Docker 1.12 swarm offering.
In June 2016 Docker released 1.12 which introduced Swarm services. This was the next step in the evolution of linking containers together. You could now define a set of containers declaratively and have Docker Swarm realise the setup on your cluster of Docker hosts. A software-defined overlay network meant you didn't have to worry about links or dynamically-allocated ports - services could reach each other by name.
With Docker 1.13 parts of Docker Compose were ported from Python into the Docker CLI and daemon codebase taking on a new name of "stacks". A traditional Compose file could be upgraded to version 3 and then be deployed onto a swarm.
For more on stacks, read my tutorial: Docker Stacks and Attachable networks
As you can see from the photos, we all had a great time and our team came away inspired. Well done to
Don't worry if you missed a birthday event, you can still continue learning online.
If you have questions you could ask them in the Docker Slack community.