I was once a docker fanboy and now I’m recovering. Don’t get me wrong docker and it’s descendents is awesome
but complicated, expensive, risky, dependent, pushes devops around, ready for attack.
I’ve mentioned this before but have you seen the adverts for COBOL programmers? It’s not enough to know the
cobol syntax you have to know that and JCL and the OS under that and even the “system”. And if you don’t
know what I’m talking about then stop reading and go back to Windows C++ programming as it’s safer.
For the rest of you here’s what you need to know:
- installing docker and it’s descendents on your host OS
- deploying things like networks and storage
- calculate the amount of storage for the images and the runtime
- better know what the effect of long running containers and storage needs
- want a lights out operation? better learn how to route logs and rebuild systems
- assuming you know how to build a container then you need to know how to compose a collections of services, a pod, and a swarm
- do you know what a microservice is and a scratch container?
- how does the container registry work?
- if you’re not using scratch containers then where are you getting your base image and can you be certain it’s free of security holes?
- do you know what the overhead is on the guest OS?
- do you know how to model you apps and partition the networks?
- create user accounts inside the container?
- vlan vlan vlan?
- are you going to use secrets?
- what about encrypted partioned networking?
- do passwords matter for the DB if you lock down the vlan?
- and then there is the monitoring of the hosts resources, networking…. etcd for discovery, itsio for whatever that was for, weave, vault, OMG…
- At some point docker etc can do the orchestration but it’s not the end all. Do you know what or how complete you want this to be?
- do you know what you’re going to do when things go wrong?
So the thing is… it’s not as simple as just running an app on a machine. And in most cases unless you embrass the entire environment
the entire environment will run you over.