如何设置modprobe overlay permit_mounts_in_userns=1?
How to set modprobe overlay permit_mounts_in_userns=1?
在 Debian 上尝试将 Docker 守护程序设置为 运行 作为非根用户(无根模式)时,我遇到了以下问题。
如 the documentation 所述,这些是 Debian GNU/Linux 需要遵循的步骤:
- 将
kernel.unprivileged_userns_clone=1
添加到 /etc/sysctl.conf
(或 /etc/sysctl.d
)和 运行 sudo sysctl --system
.
- 要使用
overlay2
存储驱动(推荐),运行sudo modprobe overlay permit_mounts_in_userns=1
(Debian特定的内核补丁,在Debian 10中引入)。将配置添加到 /etc/modprobe.d
以持久化。
- 已知可在 Debian 9 和 10 上运行。仅自 Debian 10 起支持 overlay2,并且需要上述 modprobe 配置。
据此我可以组成以下命令运行(作为 root 用户):
- 配置sysctl的命令,根据第一个要点:
echo "kernel.unprivileged_userns_clone=1" > /etc/sysctl.d/10-docker.conf \
&& sysctl --system
- 配置modprobe的命令,根据第一个要点:
echo "overlay permit_mounts_in_userns=1" > /etc/modprobe.d/10-docker.conf \
&& modprobe overlay permit_mounts_in_userns=1
第一步似乎工作正常,但是当 运行从第 2 步执行命令时,我最终遇到以下错误:
libkmod: ERROR ../libkmod/libkmod-config.c:656 kmod_config_parse: /etc/modprobe.d/10-docker.conf line 1: ignoring bad line starting with 'overlay'
从 /etc/modprobe.d/10-docker.conf
中删除“overlay”似乎都没有解决导致以下错误的问题:
libkmod: ERROR ../libkmod/libkmod-config.c:656 kmod_config_parse: /etc/modprobe.d/10-docker.conf line 1: ignoring bad line starting with 'permit_mounts_in_userns=1'
我试图搜索一些关于如何设置此配置的说明。但是没有运气,有人知道吗?
根据 #debian
频道中 freenode IRC 上的 jelly
,缺少 options
关键字,因此这应该是正确的命令:
echo "options overlay permit_mounts_in_userns=1" > /etc/modprobe.d/10-docker.conf
在 Debian 上尝试将 Docker 守护程序设置为 运行 作为非根用户(无根模式)时,我遇到了以下问题。
如 the documentation 所述,这些是 Debian GNU/Linux 需要遵循的步骤:
- 将
kernel.unprivileged_userns_clone=1
添加到/etc/sysctl.conf
(或/etc/sysctl.d
)和 运行sudo sysctl --system
. - 要使用
overlay2
存储驱动(推荐),运行sudo modprobe overlay permit_mounts_in_userns=1
(Debian特定的内核补丁,在Debian 10中引入)。将配置添加到/etc/modprobe.d
以持久化。 - 已知可在 Debian 9 和 10 上运行。仅自 Debian 10 起支持 overlay2,并且需要上述 modprobe 配置。
据此我可以组成以下命令运行(作为 root 用户):
- 配置sysctl的命令,根据第一个要点:
echo "kernel.unprivileged_userns_clone=1" > /etc/sysctl.d/10-docker.conf \ && sysctl --system
- 配置modprobe的命令,根据第一个要点:
echo "overlay permit_mounts_in_userns=1" > /etc/modprobe.d/10-docker.conf \ && modprobe overlay permit_mounts_in_userns=1
第一步似乎工作正常,但是当 运行从第 2 步执行命令时,我最终遇到以下错误:
libkmod: ERROR ../libkmod/libkmod-config.c:656 kmod_config_parse: /etc/modprobe.d/10-docker.conf line 1: ignoring bad line starting with 'overlay'
从 /etc/modprobe.d/10-docker.conf
中删除“overlay”似乎都没有解决导致以下错误的问题:
libkmod: ERROR ../libkmod/libkmod-config.c:656 kmod_config_parse: /etc/modprobe.d/10-docker.conf line 1: ignoring bad line starting with 'permit_mounts_in_userns=1'
我试图搜索一些关于如何设置此配置的说明。但是没有运气,有人知道吗?
根据 #debian
频道中 freenode IRC 上的 jelly
,缺少 options
关键字,因此这应该是正确的命令:
echo "options overlay permit_mounts_in_userns=1" > /etc/modprobe.d/10-docker.conf