It seems like Docker is in a really awkward place as a company. Their strategy was clearly to get everyone on the container hyper train then monetize by selling the production orchestration / runtime. But Kubernetes happened and GCP / AWS have rolled out competition in all the other supporting system needed; container registries, build pipelines, etc. What is the actual pitch for Docker EE now? Their marketing is pushing hard on 'security', but otherwise it seems like they are just selling a pretty UI for K8s. I don't see that being enough to support a company that has taken 250M in funding.
The k8s community is moving full steam ahead toward replacing docker containers with OCI-compliant cri-o/podman. Docker had a good run with a great idea, but it doesn’t make sense to leave all of this vendor-agnostic tooling reliant on Docker (the company).
I don't think that all the k8s distros are looking at cri-o, I think that many are considering cri-containerd instead, which kind of makes sense as they're all using containerd, so whether you need a whole separate program to manage that interface is debatable.
I wonder whether Google greenlighted significant investment into Kubernetes because they saw Docker Inc as a threat to Google Cloud and wanted to kill it early.
It's not precisely the same playbook as Embrace, Extend, Extinguish and it's been played out significantly less evilly (is that a word?) and more openly, but, well, they embraced Docker, extended it with K8s and are now well on the path towards "extinguish".
Whilst I have no inside knowledge that's not the way I think this has developed.
Docker got in as a container runtime, without any orchestration capabilities, then K8s came along to do orchestration but didn't provide it's own container runtime, so they used Docker.
After that there was some tension as Docker wanted to move "up the stack" to provide features like orchestration (with Docker Swarm) but the k8s community saw that as unecessary, they wanted a simple container runtime to sit under their orchestration layer.
Now we have options like cri-o or cri-containerd which are likely in the medium term to take over from Docker as the container runtime underneath Kubernetes installs. I'd expect that Docker will see more use in dev/test environments where full scale clusters are not required.
nobody who wants to make money likes being at the bottom of the stack (as it's where commoditization happens). Moving up means you have a bit more lock-in (via specific business requirements), and/or provide services that can be bought by stakeholders (vs a tech choice by the "lowly" engineers).
This is why i want my infrastructure to be owned by a non-profit. Just maintain the commodity infrastructure, no fancy, shmancy value-adds.
It's way more likely that Google was targeting Amazon with Kubernetes. AWS is the leading cloud providing and commoditizing cloud computing with containers would level the playing field and maybe even tilt it towards the creator for the tool.
It seems to have worked, at least a bit, since Kubernetes has gained adoption. AWS is still ahead, though.