Is this a good forum to learn Docker?
In general, I would say no. You really need some docker experience before approaching k8s and this isn’t the best place for that.
K8s dropped support for Docker two years ago. But that is a topic for another discussion thread.
In general folks conflate docker & container runtimes in general. I meant more that you should prioritize a good understanding of containers before jumping into k8s. A lot of folks skip it and go right to k8s and then run into problems later because they didn’t build that foundational knowledge.
K8s did remove native native docker support with the deprecation of dockershim, but you can use it via cri-dockerd. I’d still stick to straight containerd though.
Adding to Bob’s response:
“Docker” can mean one of several things:
-
The docker CLI used to run container images, properly called “OCI images” (
docker run ...
). -
The docker CLI used to build OCI images (
docker build ...
). -
The docker engine which can be used to run OCI images via a socket API.
Kubernetes has no concern for case #1 - do whatever you like on your local machines.
Kubernetes consumes OCI images, but does not care how they were built (#2).
Kubernetes used to support docker as a backend for running OCI image on k8s-managed nodes (via “dockershim” - an adapter between k8s API and docker API). We no longer support dockershim because containerd (which underpins docker) natively implements the k8s API.
Saying “K8s dropped support for Docker” is sort of FUD - we stopped supporting the abilitt to run OCI images via a hacky adapter layer because there are better supported options that are functionally superior in pretty much every way.
We still don’t care what tooling you use to build and test OCI images.