What do the applications do?
-
containerd.io - daemon to interface with the OS API (in this case, LXC - Linux Containers), essentially decouples Docker from the OS, also provides container services for non-Docker container managers
-
docker-ce - Docker daemon, this is the part that does all the management work, requires the other two on Linux
-
docker-ce-cli - CLI tools to control the daemon, you can install them on their own if you want to control a remote Docker daemon