176 字
1 分钟
Rootless Docker

配置Rootless Docker。

安装#

如果之前已安装docker:

Terminal window
sudo systemctl disable --now docker.service docker.socket
sudo rm /var/run/docker.sock

进行安装:

Terminal window
sudo apt-get insatll uidmap
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
dockerd-rootless-setuptool.sh install # 以非root身份运行

输出如下:

Terminal window
[INFO] Creating /home/testuser/.config/systemd/user/docker.service
...
[INFO] Installed docker.service successfully.
[INFO] To control docker.service, run: `systemctl --user (start|stop|restart) docker.service`
[INFO] To run docker.service on system startup, run: `sudo loginctl enable-linger testuser`
[INFO] Make sure the following environment variables are set (or add them to ~/.bashrc):
export PATH=/usr/bin:$PATH
export DOCKER_HOST=unix:///run/user/1000/docker.sock

把最后两行加入到~/.profile中,否则VSCode的Docker插件会无法正常使用。

Terminal window
systemctl --user start docker
systemctl --user enable docker

需要注意的是,此时Docker守护进程的配置文件在~/.config/docker/daemon.json

GPU#

在Nvidia的配置文件/etc/nvidia-container-runtime/config.toml的这一行:

[nvidia-container-cli]

添加下面的内容:

no-cgroups = true

Reference#

Rootless Docker GPU

Rootless Docker
https://blog.xiaobaizhang.top/posts/rootless-docker/
作者
张小白
发布于
2024-11-20
许可协议
CC BY-NC-SA 4.0