Requirements:
- Install rootless Docker 20.10 or later, see https://rootlesscontaine.rs/getting-started/docker/
- Enable cgroup v2 delegation, see https://rootlesscontaine.rs/getting-started/common/cgroup2/
Usage: `minikube start --driver=docker --container-runtime=containerd`.
The `--container-runtime` flag needs to be set to "containerd".
CRI-O can be also supported later.
Closes issue 10836 ("add support for rootless Docker").
Support for rootless Podman (issue 8719) is not covered in this commit.
---
Code reading guide:
- `deploy/kicbase/Dockerfile`: updated to install fuse-overlayfs and containerd-fuse-overlayfs, which is used
instead of `overlayfs` snapshotter
- `deploy/kicbase/entrypoint`: updated to verify cgroup v2 delegation.
Mostly from 8a83ee46b2/images/base/files/usr/local/bin/entrypoint
- `cmd/minikube/cmd/start_flags.go`: updated to set `KubeletInUserNamespace` feature gate when rootless
- `pkg/drivers/kic/oci`: updated to use port forwarding, because rootless container IPs are not reachable from the host
- `pkg/minikube/cruntime`: updated to generate `/etc/containerd/config.toml` with rootless support.
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>