1.基本容器准备

1.1拉取cudn镜像

网址:nvidia/cuda Tags | Docker Hub

建议直接拉取cuda+cudnn版本,选择自己想要的版本即可。

docker pull nvidia/cuda:10.0-cudnn7-devel

1.2创建容器

#创建容器
nvidia-docker run -it --runtime=nvidia -v /宿主机绝对路径目录:/容器内目录 --name 容器名 镜像名 /bin/bash

docker ps
docker exec -it 容器ID /bin/bash#进入容器

验证:

#验证gpu在容器内是否可以正常使用
nvidia-smi 
#查看cuda版本
nvcc -v

2.安装python

【建议】python安装之前的配置命令最好也运行下,避免后续报错

#!/bin/bash
set -e
 
apt-get update

#安装sqlite3
apt-get install libsqlite3-dev
apt-get -y install gcc
 
#解决ssl No module named _ssl
apt-get install libssl-dev -y
#
apt-get install make
 
apt-get -y install zlib*

#解决后续No module named '_ctypes'错误
apt install libffi-dev -y
 
#安装wget
apt-get -y install wget
 
#安装python
wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz
tar -xvzf Python-3.7.5.tgz 
cd Python-3.7.5
./configure --with-ssl
make && make install
ln -sf /usr/local/bin/python3 /usr/bin/python
#删除安装文件
#rm -R Python*
#或者
apt-get install python3.7 

#解决opencv 报错
apt-get -y install libgl1-mesa-glx
apt-get install -y libglib2.0-dev 
 

#安装pip
apt-get install python-setuptools
apt-get install python-pip

#可以将一些待安装包放在requirements.txt文件里 
pip3 install -r requirements.txt -i https://pypi.douban.com/simple

【补充】pip安装包指令

pip 安装特定版本的 Python 包

pip install -v pycrypto==2.3

pip指定安装包版本 – walker的流水账 – 51CTO技术博客

版本范围符号:==、>=、<=、>、<。

pip install cchardet                    #不指定版本号,安装可用的最新版本

pip install "requests==2.7"            #指定版本号2.7

pip install "requests>2.0,<3.0"        #(2.0,3.0)之间的最新版本

参考:(118条消息) pip 安装指定版本_manmanpa的博客-CSDN博客_pip指定版本

3.安装pytorch

3.1安装命令:

.whl文件安装cuda10.0版本的pytorch1.3.0+torchvision0.4.1

在此找到对应的版本:https://download.pytorch.org/whl/cu100/torch_stable.html

wget https://download.pytorch.org/whl/cu100/torch-1.3.0%2Bcu100-cp37-cp37m-linux_x86_64.whl
wget https://download.pytorch.org/whl/cu100/torchvision-0.4.1%2Bcu100-cp37-cp37m-linux_x86_64.whl
pip3 install torch-1.3.0+cu100-cp37-cp37m-linux_x86_64.whl torchvision-0.4.1+cu100-cp37-cp37m-linux_x86_64.whl

 【补充】

不同版本也可以尝试直接在下载代码上改,然后在复制链接试试网页上能否打开,注意与python版本匹配

3.2验证python和pytorch是否安装成功:

python3
import torch
print(torch.version.cuda)

3.3报错:

 在“import torch”时报错:ModuleNotFoundError: No module named '_ctypes'

如果前面已安装libffi就不会报错,可忽略此部分

1.安装libffi

sudo apt install libffi-dev -y

2.重新编译python

首先退回到python的安装包解压文件夹内,然后输入下列命令重新编译

sudo make clean
sudo ./configure
sudo make && sudo make install

重新编译成功后再import torch不再报错。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐