引子

Rootless Docker是导致 could not select device driver "" with capabilities: [[gpu]] 错误的关键原因。在 Rootless 模式下,Docker 的配置和权限管理与系统级 Docker 完全不同,需要额外配置。

回退 Rootless Docker 的完整步骤

通过官方脚本安装的 Rootless Docker 会在用户目录创建配置、环境变量和系统服务,回退需要清理这些配置+恢复系统级 Docker,具体步骤如下:

1
2
3
4
5
6
7
8
9
10
11
12
# 停止当前用户的 Rootless Docker 服务
systemctl --user stop docker

# 使用官方脚本卸载 Rootless Docker(核心步骤)
dockerd-rootless-setuptool.sh uninstall

# 禁用并清理用户级 Docker 服务(兜底)
systemctl --user disable docker
rm -rf $HOME/.config/systemd/user/docker.service
rm -rf $HOME/.config/docker
rm -rf $HOME/.local/share/docker
rm -rf $HOME/.docker

清理完 Rootless 配置后,重新启用系统级 Docker:

1
2
3
4
5
6
7
8
9
# 重启系统级 Docker 服务
sudo systemctl restart docker

# 验证系统级 Docker 正常运行
sudo docker ps

# (可选)将用户加入 docker 组,免 sudo 使用
sudo usermod -aG docker $USER
newgrp docker

关于用户组

1
2
3
4
5
# 常用命令如下
groups
id
cat /etc/group
cat /etc/passwd