首页 > 解决方案 > 无法无根安装 docker daemon

问题描述

我正在尝试以非 root 用户身份安装 docker 守护进程。我在 RHEL 7.9 上运行它。

后续步骤:

  1. 创建一个非root用户并切换到该用户。
  2. curl -fsSL https://get.docker.com/rootless | sh
  3. 设置以下环境变量:

导出 XDG_RUNTIME_DIR=/home/test/.docker/run;导出 PATH=/home/test/bin:$PATH; 导出 DOCKER_HOST=unix:///home/test/.docker/run/docker.sock

  1. 最后,当尝试手动启动 docker 守护程序时,它失败并出现以下错误:
PATH=/home/test/bin:/sbin:/usr/sbin:$PATH dockerd-rootless.sh

WARN[0000] The host root filesystem is mounted as "". Setting child propagation to "rslave" is not supported.
[rootlesskit:parent] error: failed to setup UID/GID map: newuidmap 666 [0 1003 1 1 296608 65536] failed: newuidmap: write to uid_map failed: Operation not permitted
: exit status 1

我在这个练习中的目标是以非特权模式在主机上启动 docker 守护程序,并运行单个容器。这就是我所需要的,但除了上述说明之外,我无法找到以非 root 用户身份运行 docker 守护程序的任何其他参考。

有人可以帮我解决这个问题吗?另外,如果我的用例有更好的方法,请告诉我。感谢您的时间!

标签: dockerdocker-daemonrootless

解决方案


推荐阅读