Hacker News new | ask | show | jobs
by sciencesama 1234 days ago
If you just want to learn it for fun and home just install portainer and run pihole, you understand a lot more. Then learn to do it via command line. Else just go for kubernetes man. With Docker shim removed from kubernetes no one is using Docker professionally.
2 comments

> With Docker shim removed from kubernetes no one is using Docker professionally.

I think this statement is not as precise as it should be. I'm running docker produced images in a k8s cluster and had to google what you are talking about here.

https://kubernetes.io/blog/2020/12/02/dont-panic-kubernetes-...

"Docker-produced images will continue to work in your cluster with all runtimes, as they always have."

Dockerfile is a very common file to see in projects, and I'm thankful when I see it.

To disambiguate it’s necessary to separate Docker the runtime from OCI image format, commonly still referred to by a lot of people colloquially as “Docker Images”. Docker the desktop software, file format and CLI is still very much used professionally to build and test OCI images, which then run in Kubernetes. Docker as a container runtime platform (and orchestration with Swarm) is what is generally going out of vogue.

Although a pattern I commonly see these days with a lot of OSS projects is that oftentimes they provide a docker-compose.yaml even though no one at any reasonable scale is running Docker Compose in production. This is simply because Kubernetes setups are complicated, weighty, and heterogenous, and often not running on your local machine and Docker Compose is a great way to do a hello world style demo of your container-orchestrated app (because everyone still uses Docker Desktop).

Docker, Podman, Buildah, etc. produce container images in the OCI image format. The Kubernetes container runtime (runc) runs containers according to the OCI specification.
> With Docker shim removed from kubernetes no one is using Docker professionally.

Not sure about this, Docker is still widely used in CI systems and local development in my experience.

It's also widely used in Opensource projects for "reproducible builds"