Editorial Note: This was written in April 2014. Check out how we are using Docker in our latest architectures.
Personally, I find Docker to be a useful tool and we’ve been embedding it into our dev and test processes in useful ways for DefCore TCUP (at Conference), OpenCrowbar Admin and Dev Nodes. To me, these are concrete and clear use cases.
There are clearly a lot more great use-cases for Docker, but I can’t help but feel like it’s being thrown into architectural layer cakes and markitectures as a substitute for the non-words “cloud”, “amazing” and “revolutionary.”
How do I distinguish hot from hype? I look for places where Docker is solving just one problem set instead being a magic wand solution to a raft of systemic issues.
Places where I think Docker is potent and disruptive
- Creating a portable and consistent environment for dev, test and delivery
- Helping Linux distros keep updating the kernel without breaking user space (RHEL 7 anyone?)
- Reducing the virtualization overhead of tenant isolation (containers are lighter)
- Reducing the virtualization overhead for DevOps developers testing multi-node deployments
But I’m concerned that we’re expecting too many silver bullets
- Packaging is still tricky: Creating a locked box helps solve part of downstream problem (you know what you have) but not the upstream problem (you don’t know what you depend on).
- Container sprawl: Breaking deployments into more functional discrete parts is smart, but that means we have MORE PARTS to manage. There’s an inflection point between separation of concerns and sprawl.
- PaaS Adoption: Docker helps with PaaS but it does not solve neither the “you have to model your apps for a PaaS” nor the “PaaS needs scalable data services” problems
Speaking of Miley Cyrus, it’s not the container that matters, but what’s on the inside. Docker can take a lesson from Miley: attention is great but you’ve still got to be able to sing. I’m not sure about Miley, but I am digging the tracks that Docker is laying down. Docker is worth putting on your play list.