docker 安装
官网安装教程:https://docs.docker.com/engine/install/ubuntu/
0.卸载旧版本
查看系统版本
- for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
复制代码 1.设置Docker的apt存储库
- # Add Docker's official GPG key:
- sudo apt-get update
- sudo apt-get install ca-certificates curl
- sudo install -m 0755 -d /etc/apt/keyrings
- sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
- sudo chmod a+r /etc/apt/keyrings/docker.asc
- # Add the repository to Apt sources:
- echo \
- "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
- $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
- sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- sudo apt-get update
复制代码 2.安装Docker软件包
- sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
复制代码 查看 docker 版本
3.配置加速地点:设置registry mirror
- sudo mkdir -p /etc/docker
- sudo tee /etc/docker/daemon.json <<-'EOF'
- {
- "registry-mirrors": [
- "https://alzgoonw.mirror.aliyuncs.com",
- "https://do.nark.eu.org",
- "https://dc.j8.work",
- "https://docker.m.daocloud.io",
- "https://dockerproxy.com",
- "https://docker.mirrors.ustc.edu.cn",
- "https://docker.nju.edu.cn"
- ]
- }
- EOF
复制代码 重载地点&重启docker&查看状态&查看配置的加速地点是否成功
- sudo systemctl daemon-reload #重要
- sudo systemctl restart docker
- systemctl status docker
- docker info
复制代码
4.通过运行hello-world映像来验证安装成功
- sudo docker run hello-world
复制代码
查看是否成功拉取hello-world镜像
nvidia-container-toolkit 安装
官网手册:
概述 https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/index.html
安装 https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#
NVIDIA Container Toolkit是库和实用步伐的集合,使用户能够构建和运行GPU加速容器。目前包括:
0.先决条件
需要已经安装Ubuntu 匹配的NVIDIA GPU驱动步伐,以及docker。
1.配置生产存储库
× 英伟达官网(慢)
- curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
- && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
- sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
- sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
复制代码 √ 国内库(推荐)
- 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 | \
- sed 's#deb https://nvidia.github.io#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://mirrors.ustc.edu.cn#g' | \
- sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
复制代码 2.从存储库中更新包装列表
3.安装NVIDIA容器工具包
- sudo apt-get install -y nvidia-container-toolkit
复制代码 4.验证安装
- nvidia-container-cli --version
复制代码
5.配置docker
允许 Docker 容器访问和利用 NVIDIA GPU 资源,从而支持 GPU 加速。
(1)给Docker安装"显卡驱动",让Docker容器能直接调用NVIDIA显卡
- sudo nvidia-ctk runtime configure --runtime=docker
复制代码
(2)重启docker
(3)修改 /etc/docker/daemon.json 文件,将 NVIDIA 容器运行时的配置信息写入 Docker 的配置文件中。
- cat /etc/docker/daemon.json
- "runtimes": {
- "nvidia": {
- "args": [],
- "path": "nvidia-container-runtime"
- }
- }
复制代码 (4)查看docker 支持的运行时有没有nvidia
- docker info | grep Runtimes
复制代码
(5) 启动容器运行 nvidia-smi 查看效果
- sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
复制代码 –runtime=nvidia : 指定容器运行时
–gpus all:哀求所有可用的 GPU 资源
nvidia-smi:查看 NVIDIA GPU 的状态信息,包括 GPU 使用率、内存使用情况等
常用命令
服务相关
- sudo systemctl start docker # 启动服务sudo systemctl stop docker # 停止docker服务sudo systemctl enable docker # 设置开机自启sudo systemctl restart docker
- # 重启服务sudo systemctl status docker # 检查服务状态sudo systemctl enable docker # 设置开机启动docker服务
复制代码 镜像相关
- docker images
- # 查看当地所有的镜像docker search <镜像名称> # 从网络中查找需要的镜像
复制代码 容器相关
- docker ps # 查看正在运行的容器
- docker ps -a # 查看所有容器(包括已停止的)
- docker run <参数> # 创建并启动容器,仅只用运行一次(每次docker run都会生成新容器)
- docker start 容器名称/容器id # 启动容器,每次开机后启动
- docker exec -it 容器名称/容器id bash # 进入 容器
- docker stop 容器名称/容器id # 停止容器
- docker rm 容器名称/容器id # 删除容器:如果容器是运行状态则删除失败,需要停止容器才能删除。
- docker inspect 容器名称/容器id # 查看容器信息
复制代码
数据卷相关
- 数据卷是宿主机中的一个目录或文件
- 当容器目录和数据卷目录绑定后,对方的修改会立即同步
- 一个数据卷可以被多个容器同时挂载
- 一个容器也可以挂在多个数据卷
创建启动容器时,使用-v参数设置数据卷
- docker run … -v 宿主机目录(文件):容器目录(文件)…
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |