Funny Docker Workshop to learn from scratch
Published by Miguel Viera on 17/12/2019
Introduction
In one of our current clients we are taking some learning time for new things outside of our current context/stack. One of the proposals of the team was a Docker workshop because I introduced it for our CI and our local testing environments to avoid connecting to production from the local machines to run the our tests.
So I was the person in charge of preparing it. And here I would like to share a way to learn Docker from scratch I thought of.
Learn by doing
I really believe in the philosophy for learning new things is tighly related with practice, practice, practice… And that’s also in Codesai’s DNA, so I wanted to ideate a way to explain a bit of theory of Docker and exercises to apply that theory. The theory I explained answers the following:
- The whys:
- Why Docker?
- Differences with past technologies
- Why is it better than the previous tooling?
- The hows:
- How does Docker solve these problems?
- How does Docker improve upon the previous tooling?
- How can Docker help us?
The small exercise consist on assembling two different applications with different languages and let people see one of the advantages of Docker. Removing the complexity of dedicated infrastructure for a concrete language/stack.
And as the last trick I wanted them to see how easy is to build, push an image and publish your Docker container in a famous service like Heroku. So in the last part of the workshop we do that. The steps explaining how to publish your app on Heroku can be also found on the README file inside of the heroku/ folder from the root of the repository.
So I’d like you to check it yourself, give me some feedback and enjoy what I prepared. Let’s Dockerize everything!!.
Here is the repository with the content and the exercises. Each folder has a README.md explaining what to do. The main README.md is just the theory of Docker. Enjoy! Docker Workshop Repo