在 Docker 的使用中,关于权限的问题需要分情况讨论:
dockerd
)默认以 root
用户运行,因此直接使用 docker
命令(如 docker run
)通常需要 root
权限或通过 sudo
执行。sudo
?将用户加入 docker
用户组
将当前用户添加到 docker
组后,即可直接运行 Docker 命令,无需 sudo
:
bash
sudo usermod -aG docker $USER # 将当前用户加入docker组
newgrp docker # 刷新组权限(或重新登录)
docker
组权限等同于 root
(因为容器可以挂载宿主机目录或提权)。仅限信任的用户加入此组。使用 Rootless 模式(推荐)
Docker 支持无根模式(Rootless Mode),允许普通用户运行守护进程和容器:
bash
# 安装必要工具(Ubuntu示例)
sudo apt-get install uidmap
# 配置Rootless模式
dockerd-rootless-setuptool.sh install
containerd
+ nerdctl
(支持 Rootless)。docker
组或 Rootless 模式。如有进一步问题(如具体错误或配置需求),可提供更多上下文以便精准解答。