无根

从 kind 0.11.0 开始,无根 Docker无根 Podman无根 nerdctl 可用作 kind 的节点提供程序。

提供程序要求 🔗︎

主机要求 🔗︎

主机需要运行 cgroup v2。确保 docker info 命令的结果包含 Cgroup Version: 2。如果它打印 Cgroup Version: 1,请尝试将 GRUB_CMDLINE_LINUX="systemd.unified_cgroup_hierarchy=1" 添加到 /etc/default/grub 并运行 sudo update-grub 以启用 cgroup v2。

此外,根据主机配置,可能需要执行以下步骤

限制 🔗︎

无根 Docker 的限制也适用于 kind 集群。

例如

使用无根 Docker 创建 kind 集群 🔗︎

要使用无根 Docker 创建 kind 集群,只需运行

$ export DOCKER_HOST=unix://${XDG_RUNTIME_DIR}/docker.sock
$ kind create cluster

使用无根 Podman 创建 kind 集群 🔗︎

要使用无根 Podman 创建 kind 集群,只需运行

$ KIND_EXPERIMENTAL_PROVIDER=podman kind create cluster

在某些发行版上,您可能需要使用 systemd-run 将 kind 启动到其自己的 cgroup 范围

$ systemd-run --scope --user kind create cluster

使用无根 nerdctl 创建 kind 集群 🔗︎

注意:需要 containerd v1.7+

要使用 nerdctl 创建 kind 集群,只需运行

$ KIND_EXPERIMENTAL_PROVIDER=nerdctl kind create cluster

提示 🔗︎