为什么会出现此错误“运行特权模式时必须在主机命名空间中运行容器”?

AWS*_*ing 4 linux containers docker

我已经启用了用户命名空间,现在我想运行带有 --privileged 标志的 docker 容器,是的,我知道这是一个不好的做法,但我仍然想以 --privileged 运行该 docker。

但我可以看到弹出此错误,所以很好奇这个错误是什么?我究竟做错了什么?

docker: Error response from daemon: privileged mode is incompatible to user namespaces. You must run the container in the host namespace when running privileged mode'

Sah*_*ain 6

--userns host在 docker run 命令上设置。

他们在 docker 文档中说:

如果在守护进程上启用用户命名空间,则默认情况下所有容器都会在启用用户命名空间的情况下启动。在某些情况下,例如特权容器,您可能需要禁用特定容器的用户命名空间。要禁用特定容器的用户命名空间,请将该--userns=host标志添加到docker container createdocker container rundocker container exec命令。

docker: Error response from daemon: privileged mode is incompatible to user namespaces. You must run the container in the host namespace when running privileged mode'

错误中非常清楚,要运行容器,--previleged您必须在主机命名空间而不是自定义命名空间中运行容器。