然后加载镜像:

sudo docker load -i dl.tar
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

2. 运行容器

以容器名 dl 为例:

sudo docker run --gpus all -it --name dl hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel /bin/zsh
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

如果需要使用 Jupyter,可以使用以下命令:

sudo docker run --gpus all -it --name dl -p 8888:8888 hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel /bin/zsh
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

省流版

对于映射多个端口的同学,可以直接使用主机网络的配置(--network host

sudo docker run --gpus all -it --name dl --network host hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel /bin/zsh
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

如果需要设置代理,增加 -e 来设置环境变量,也可以参考拓展文章a

假设代理的 HTTP/HTTPS 端口号为 7890, SOCKS5 为 7891:

融入到之前的命令中:

sudo docker run --gpus all -it \
  --name dl \
  --network host \
  -e http_proxy=http://127.0.0.1:7890 \
  -e https_proxy=http://127.0.0.1:7890 \
  -e all_proxy=socks5://127.0.0.1:7891 \
  hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel \
  /bin/zsh
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

常用操作提前看


如果还没有安装 Docker,继续阅读,可以根据实际情况通过目录快速跳转。

安装 Docker Engine

对于图形界面来说,可以跳过下面的命令直接安装 Desktop 版本(其中会提供 Docker Engine),这是最简单的方法。根据系统访问:

以下是命令行的安装命令,在 Ubuntu 上运行,其余系统参考官方文档

卸载旧版本

在安装 Docker Engine 之前,需要卸载所有有冲突的包,运行以下命令:

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

apt-get 可能会报告没有安装这些包,忽略即可。

注意,卸载 Docker 的时候,存储在 /var/lib/docker/ 中的镜像、容器、卷和网络不会被自动删除。如果你想从头开始全新安装,请阅读 Uninstall Docker Engine 部分

使用 apt 仓库安装

首次安装 Docker Engine 之前,需要设置 Docker 的 apt 仓库。

  1. 设置 Docker 的 apt 仓库。

    # 添加 Docker 的官方 GPG 密钥:
    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
    
    # 将仓库添加到 Apt 源:
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    如果你使用的是 Ubuntu 的衍生发行版,例如 Linux Mint,可能需要使用 UBUNTU_CODENAME 而不是 VERSION_CODENAME

    如果 sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc 执行失败,尝试以下命令:

    sudo wget -qO- https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
  2. 安装 Docker 包。

    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
  3. 通过运行 hello-world 镜像来验证安装是否成功:

    sudo docker run hello-world
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1

    这个命令会下载测试镜像并运行,如果你看到以下输出,那么恭喜你安装成功:

    image-20241113173220588

GPU 驱动安装

如果需要使用 GPU 的话,先安装适用于你的系统的 NVIDIA GPU 驱动程序,访问任一链接进行:

这部分配置文章很多,偷个懒 😃 就不开新环境演示了,下面讲点可能不同的。

安装 NVIDIA Container Toolkit

为了在 Docker 容器中使用 GPU,需要安装 NVIDIA Container Toolkit。

注意,我们现在不再需要安装 nvidia-docker,官方在 2023.10.20 指出其已被 NVIDIA Container Toolkit 所取代,过去的配置命令可能已不再适用。

以下命令使用 Apt 完成,Yum 等其他命令访问参考链接:Installing the NVIDIA Container Toolkit

  1. 设置仓库和 GPG 密钥

    设置 NVIDIA 的软件源仓库和 GPG 密钥,确保我们可以从官方源安装 NVIDIA Container Toolkit。

    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。
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
    • 2
    • 3
    • 4
  2. 安装 NVIDIA Container Toolkit

    sudo apt-get update
    sudo apt-get install -y nvidia-container-toolkit
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
    • 2
  3. 配置 Docker

    使用 nvidia-ctk 工具将 NVIDIA 容器运行时配置为 Docker 的默认运行时。

    sudo nvidia-ctk runtime configure --runtime=docker
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
  4. 重启 Docker

    sudo systemctl restart docker
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1

拉取并运行深度学习 Docker 镜像

现在可以拉取深度学习(dl)镜像,命令和之前一致。

  1. 拉取镜像

    sudo docker pull hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1

    image-20241115163216096

  2. 运行镜像

    sudo docker run --gpus all -it hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1
  3. 检查 GPU

    在容器内运行:

    nvidia-smi
     class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">
    • 1

    如果正确显示代表成功。不过对于实际使用来说,还需要了解基础命令和报错的解决方法。使用 Ctrl + D 或者命令行输入 exit 并回车退出容器,继续阅读《Docker 基础命令介绍和常见报错解决》。

附录

安装清单

base

基础环境

Apt 安装

pip 安装

插件

dl

dl(Deep Learning)版本在 base 基础上,额外安装了深度学习可能用到的基础工具和库:

Apt 安装

pip 安装

一些库在安装时被自动安装,如 tensorflow 中的 keras

如果需要额外的库,可以通过以下命令手动安装:

pip install --timeout 120 <替换成库名>
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

这里 --timeout 120 设置了 120 秒的超时时间,确保在网络不佳的情况下仍然有足够的时间进行安装。如果不进行设置,在国内的环境下可能会遇到安装包因下载超时而失败的情况。

data-report-view="{"mod":"1585297308_001","spm":"1001.2101.3001.6548","dest":"https://blog.csdn.net/weixin_42426841/article/details/143743785","extend1":"pc","ab":"new"}">>
注:本文转载自blog.csdn.net的Hoper.J的文章"https://blog.csdn.net/weixin_42426841/article/details/143743785"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接

评论记录:

未查询到任何数据!