Docker zu CRIO-O

Switching from Docker to CRI-O

In this blog post, we’d like to answer some FAQs regarding the change from Docker to CRI-O. Here we go!

First and foremost: how do I switch from Docker to CRI-O?

The answer is not quite straightforward, unfortunately. It depends on several factors.

A Kubernetes cluster can use CRI-O as a container runtime (OpenShift 4.x does so, for example).

Addressing image builders: CRI-O does not offer the toolset for building images. CRI-O is a daemon, only accessible through the Container Runtime Interface (CRI).

CRI-O = CRI + OCI
This means that it creates containers from images compliant to the standards defined by the open container initiative (OCI).

Is Podman a CLI to CRI-O?

No. crictl queries the CRI on the terminal. The backends are different, there is a large overlap between contributors and the design is similar (pods in mind).

How can I try it?

alias docker=podman

Do I have to learn new commands?

It’s not necessary, but if you really want to:
podman manages containers
buildah creates container images
skopeo manages images in registries

What do I lose?

For a long time, there was no replacement for docker-compose. Now, there is a community project podman-compose. We are still evaluating to what extent it can serve as a substitute.

Conclusion

k8s cluster → CRI → docker (containerd) / CRI-O
CLI → docker / podman, buildah, skopeo / rkt

The following two tabs change content below.

Jan Bundesmann

Latest posts by Jan Bundesmann (see all)