Last week I organized a hacking session for my team at work. We ordered pizzas and we stayed a couple of hours extra to have a look at Docker. For some people this was completely new, for some others not as much. The feedback however was positive overall.
Here’s what we covered initially:
- Docker introduction and some concepts. What is Docker? What is a Docker image? What is a Docker container?
- Hands on (after all this is a hacking session): Install Docker on our laptops and run the hello world (some folks had Windows 7 laptops so they installed Docker Toolbox instead).
- Introduction to Dockerfile. We went over the instructions. We discussed ports, volumes, environment variables and base images.
- Introduction to Docker Store (formerly Docker Hub). Discussed certified images, popular images, etc.
From there, we created a simple Spring Boot application and dockerized it (following this guide from Spring):
- First, we created a hello world Spring Boot web application. To some people this was also new, so we stayed on this point for a bit longer.
- We created a Docker image for the app using Docker's CLI.
- We created a Docker image for the app using the Spotify Maven plugin.
- Finally, we published the custom Docker image to AWS ECR.
- Just when we ran out of time, we briefly took a glance at docker-compose as well.
In my opinion, the success of a hacking session depends on the participation of the joiners (and that’s why our session turned out quite nice). This is not like a meetup where you go and hear someone speaking. In a hacking session, you have to join with a hands on experimenting mentality. You type, you search, you figure it out, you learn, you have fun!
(The photo is from the 1995 movie Hackers, but you already knew that)