containerd.io vs docker-ce-cli vs docker-ce
"containerd.io" is a container runtime that is designed to be lightweight and modular. It is used to manage the entire lifecycle of containers, from image management to container execution and networking. containerd is a popular alternative to the standard runtime that ships with Docker, and it can be used as a standalone runtime or as part of a container orchestration platform like Kubernetes.
"docker-ce-cli" is the command-line interface (CLI) for the Community Edition (CE) of Docker. It allows you to interact with the Docker daemon and manage containers, images, networks, and volumes. It is separate from the Docker CE daemon (dockerd), which is the background service that runs on a host machine and manages the actual containers.
"docker-ce" is the Community Edition (CE) of Docker, which includes both the Docker daemon (dockerd) and the Docker CLI (docker-ce-cli). Docker CE is a free and open-source version of Docker that is suitable for both personal and professional use. It's available for a wide range of platforms including Windows and Linux
In summary, containerd is a standalone container runtime that can be used as an alternative to the runtime that ships with Docker, docker-ce-cli is a command-line interface that allows you to interact with the Docker daemon, and docker-ce is the Community Edition of Docker which includes both the daemon and the command line interface
It's worth mentioning that there is also another version of Docker called Docker Enterprise (EE) which is the commercial version of Docker and it's designed for large enterprise use cases.