内容
在Ubuntu 22.04 上安装 docker,修改docker镜像存放位置至数据盘,配置使用国内镜像源,以及配置英伟达驱动使用方法。
安装必要工具
sudo apt update && sudo apt install -y ca-certificates curl gnupg lsb-release
添加阿里源 Docker 镜像仓库证书证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/aliyun-docker.gpg
添加仓库
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/aliyun-docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装docker
sudo apt update
sudo apt install -y docker-ce
# Ubuntu系统安装完以后自动启动,WSL可能需要额外一行命令:
sudo service docker start
验证docker启动
sudo docker info
当前用户加入docker用户组
#如果没有docker group
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
运维相关
#查看所有的container示例
docker ps -a
#查看所有的镜像
docker images
#查看docker运行日志,在启动失败时可用于排查问题
dockerd
#用于修改docker镜像的名称,请自行修改<image-name-1>,<tag-1>,<image-name-2>, <tag-2>的内容
docker tag <image-name-1>:<tag-1> <image-name-2>:<tag-2>
#移除docker镜像名 / 移除docker镜像
docker rmi A1:tag1
#查看一个容器的日志,使用ctrl+C 退出
docker logs -f <container-1>
#查看一个容器的信息
docker inspect <container-1>
#删除一个容器
docker rm -f <container-1>
镜像储存位置修改
#docker 镜像 迁移存储路径
sudo rsync -aP /var/lib/docker/ /mnt/data0/docker
#修改docker配置
打开 /etc/docker/daemon.json
#加入新位置,,维持daemon.json的语法
{
["data-root":"/your/new/path"]
}
#重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
# 确认docker文件位置
docker info | grep "Docker Root Dir"
换国内源
打开 /etc/docker/daemon.json
加入源地址,维持daemon.json的语法
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.hlmirror.com",
"your-other-source.com"
]
}
# 加载并重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
#确认换源成功
docker info
--------------------------------------------------
#或者可以一次性使用源:
docker pull docker.1ms.run/<image>:<tag>
打包至离线环境
#打包镜像
docker save -o my-docker-image.tar my-docker-image:tag
#上传至目标服务器并加载
docker load -i my-docker-image.tar
配置Nvidia-Container-Toolkit
# 确认 Nvidia 驱动已经安装:
nvidia-smi
在线下载方法
# 导入 GPG 密钥
curl -fsSL https://mirrors.ustc.edu.cn/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
# 添加中科大镜像源列表
curl -s -L https://mirrors.ustc.edu.cn/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
# 直接安装
sudo apt update
sudo apt install -y nvidia-container-toolkit
离线下载方法
# 去在线环境下载以下包,并上传至目标服务器依次安装
1. nvidia-container-toolkit-base.deb
2. libnvidia-container1.deb
3. libnvidia-container-tools.deb
4. nvidia-container-toolkit.deb
配置docker
# 配置Docker守护进程
sudo nvidia-ctk runtime configure --runtime=docker
# 重启docker
sudo systemctl restart docker
# 切换gpu到持久模式使得nvidia-smi没有延迟
sudo nvidia-smi -pm 1