ubuntu18.0本地配置Docker并配置pytorch环境然后运行本地python文件

一、Docker安装

官网提供了三种安装方法,

  • 设置 Docker 的存储库并从中进行安装,以便于安装和升级任务。这是推荐的方法,但是这是默认安装最新版本docker
  • 下载 DEB 包并手动安装,完全手动管理升级。可以指定版本安装docker
  • 使用自动方便脚本来安装 Docker。

本博客主要介绍第二种方法,即可以指定版本的安装方法,安装Docker20.10版本

1、下载Docker deb包,下载路径:
https://download.docker.com/linux/ubuntu/dists/bionic/pool/stable/amd64/

首先从上链接中下载docker-ce-cli_20.10.9_3-0_ubuntu-bionic_amd64.debdocker-ce_20.10.9_3-0_ubuntu-bionic_amd64.debcontainerd.io_1.6.6-1_amd64.deb三个指定的包,然后运行下面的命令进行安装并测试:

2、dpkg命令安装

sudo dpkg -i docker-ce-cli_20.10.9_3-0_ubuntu-bionic_amd64.deb docker-ce_20.10.9_3-0_ubuntu-bionic_amd64.deb containerd.io_1.6.6-1_amd64.deb

测试:
执行命令

su  # 进入root权限

docker run hello-world

在这里插入图片描述

二、配置pytorch环境

上docker Hub官网 点击官方链接搜索 pytorch/pytorch
在这里插入图片描述

不用登录,直接在搜索栏进行搜索即可。

在这里插入图片描述
选择合适的版本,点击右边复制按钮,复制Docker pull命令,这里我选择了
docker pull pytorch/pytorch:1.9.0-cuda10.2-cudnn7-devel
在这里插入图片描述

等待完成后,使用命令:docker images 查看当前镜像:
在这里插入图片描述
发现刚才安装的pytorch镜像已经存在了。

三、运行pytorch容器

执行命令:docker run -it --gpus all pytorch/pytorch:1.9.0-cuda10.2-cudnn7-devel /bin/bash
这里注意,如果使用GPU的话,–gpus all必须要带,如果不适用的话可以不用此参数
首次运行可能会报错,没报错的话忽略:
在这里插入图片描述
报错和GUP有关,查了资料说在通过 --gpus 参数来使用宿主机的 GPU 时,需要先安装一个英伟达的nvidia-container-runtime。另外需要注意的是,这个东西是不能直接 apt install,会报找不到该软件,需要先添加英伟达的 apt 软件源。具体操作步骤如下:

可以新建一个nvidia-container-runtime-script.sh可执行文件,文件内容为

# nvidia-container-runtime-script.sh

sudo curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
sudo curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update

然后执行可执行文件:sudo sh nvidia-container-runtime-script.sh

然后执行:

sudo apt-get install nvidia-container-runtime

安装完毕后重启docker : sudo systemctl restart docker

最后重新运行容器:
在这里插入图片描述
发现GPU相关问题解决了。

四、在本地Docker环境下运行本地的python文件

执行命令:

docker run -it -v /home/zhanghua/DockerTest:/home --gpus all  pytorch/pytorch:1.9.0-cuda10.2-cudnn7-devel /bin/bash

这里注意,运行容器时和“三”中的运行命令相比加了“-v /home/zhanghua/DockerTest:/home”参数,参数意义是:将本地目录“/home/zhanghua/DockerTest”挂载到docker 容器的“/home文件夹”,当然这里挂载目录和目标挂载目录都可以随便,就看你的python文件在哪里了,比如我的python文件在本地的"/home/zhanghua/DockerTest"目录中

在这里插入图片描述

代码运行成功。
注:我的DockerTest.py

import torch
print("------------------")
print("Docker 环境测试")
print()

print("cuda是否可用")
print(torch.cuda.is_available())

本博客只是初学小白记录,如有问题大家可以评论区讨论。

修改Docker的默认存储位置:
https://blog.csdn.net/qq_41251963/article/details/123065678

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZhangJingHuaJYO

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值