Hey everyone!
With advent of Docker coming to an end, I want to share some resources that I found helpful during my journey. I think you might like them too.
How containers work by Julia Evans
Julia Evansβ zine about containers is an absolute gem! Itβs a fun, illustrated guide that breaks down complex container concepts into digestible pieces. Julia has a unique talent for making technical topics approachable and enjoyable. The zine covers everything from namespaces and cgroups to container runtime internals, all with delightful hand-drawn illustrations. If youβre a visual learner or just want a fresh perspective on container technology, this is a must-read, although it is only available if you pay for it!
Docker Documentation
The official Docker documentation is your comprehensive guide to all things Docker. While it might seem obvious, itβs worth highlighting that this is one of the best-maintained technical documentations out there.
Docker Source Code
For those interested in the deeper technical aspects, Dockerβs source code is available in two main repositories:
BuildKit is the engine behind Dockerβs build system. Itβs a fascinating look into how Docker images are constructed, with features like:
- Concurrent dependency resolution
- Efficient caching mechanisms
- Advanced build primitives
Moby is the open-source foundation of Docker Engine. Diving into this codebase will help you understand:
- Container runtime implementation
- Image management
- Networking architecture
- Storage drivers
I spend a lot of time reading the source code of Docker and BuildKit. Highly recommend it if you want to understand how Docker works under the hood!
Docker Registry Specification
The Distribution Specification is essential reading if you want to understand how Docker images are stored and distributed, but otherwise itβs not that interesting.
OCI Specification
The Open Container Initiative (OCI) Specification defines the industry standards for container formats and runtimes. This is crucial reading for:
- Understanding container image formats
- Learning about container runtime requirements
- Grasping the standardization that enables container portability
- Exploring the technical requirements for container platforms
These specifications form the foundation of modern container technology and are essential reading if you want to deeply understand how containers work at a standardized level.
My Blog :)
Well, canβt leave out my own blog, right? I write a lot about Docker, mostly real world examples etc. Check out some of my best posts:
- Say Goodbye to Docker Volumes
- 5 Cheap Ways to Deploy Docker Containers
- Donβt build Docker apps without this flag
See you tomorrow for a last time,
Jonas