当前位置:   article > 正文

从头搭建pytorch Docker镜像_docker pytorch镜像

docker pytorch镜像

前言

此文不需要前言,请从正文开始

开始搭建

正文

默认大家都是有一定docker基础的,没有的话建议去花个20分钟学一下基础知识。相对于配置cuda来说,我觉得pytorch还是更简单一些。因此这里以官方的nvidia/cuda:10.2-cudnn8-runtime-ubuntu18.04为基础,构建pytorch深度学习环境。你可以根据自己的需求选择合适的版本,地址如下:cuda官方docker镜像地址,python可以选择官方纯净版,好处是小,坏处是什么都得自己配置。也可以选择conda,好处是省心,坏处是比较大

从docker hub下载镜像

docker pull nvidia/cuda:10.2-cudnn8-runtime-ubuntu18.04
  • 1

下载完成后使用docker images确认镜像信息。

创建容器并运行

docker run -it --name pytorch1.12.1-cuda10.2  nvidia/cuda:10.2-cudnn8-runtime-ubuntu18.04 /bin/bash  # 这里镜像名称可以使用ID号,为了更清晰这个使用名称
  • 1

PS: 一般创建运行后就会直接进入容器,如果没有,先使用docker ps -a查看容器信息,然后使用docker exec --it 容器ID /bin/bash进入容器内部。

更新容器

运行以下命令更新系统和安装基础包

apt update
apt install -y wget build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev liblzma-dev
apt clean
rm -rf /var/lib/apt/lists/*
  • 1
  • 2
  • 3
  • 4

这里可能出现的报错:

W: GPG error: https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1804/x86_64  > InRelease: The following signatures couldn't be verified because the public key is not available:  NO_PUBKEY A4B469963BF863CC
E: The repository 'https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64   InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
  • 1
  • 2
  • 3
  • 4

解决办法:

  • 1、获取gpg公钥
gpg --keyserver keyserver.ubuntu.com --recv-keys A4B469963BF863CC
  • 1
  • 2、导出公钥,加入到 apt 信任密钥
gpg --export --armor A4B469963BF863CC | apt-key add -
  • 1
  • 然后再运行上面的命令即可

*安装python

这里为了清晰的知道文件在哪,先新建临时目录,然后进入到目录下下载python源码包,再编译安装。

  • 首先新建并进入临时目录
    mkdir /temp
    cd temp
  • 下载python
    wget https://www.python.org/ftp/python/3.7.13/Python-3.7.13.tgz
  • 然后解压
    tar -xvf Python-3.7.13.tgz
  • 进入解压后的python文件夹
    cd Python-3.7.13
  • 编译安装
    –prefix用于指定安装位置
    –enable-optimizations用于优化配置
    ./configure --prefix=/usr/local/python3.7 --enable-optimizations
    ./configure --enable-optimizations
    编译步骤较为漫长,根据cpu核心数,使用-j选项采用多线程编译,可以加快编译速度 ,例如我的CPU核心数为8,线程数=核心数*
    make -j8
    make install
  • 建立建立指向python3.7和pip3.7的软链接
    ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python3.7
    ln -s /usr/local/python3.7/bin/pip3.7 /usr/bin/pip3

*安装anaconda

下载地址:https://repo.anaconda.com/archive/index.html
这里我以2021.05版本为例:

  • 下载安装
wget -c https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
# 安装
bash Anaconda3-2021.05-Linux-x86_64.sh
  • 1
  • 2
  • 3

然后一直按enter直到出现需要输入yes。输入yes后会提示你安装路径

Anaconda3 will now be installed into this location:
/root/anaconda3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/root/anaconda3] >>>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

这里可以填个自己的路径,记录一下,或者默认的也可以,按enter继续。
在这里插入图片描述
初始化,输入yes。这里也可以看到安装路径。

Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>> yes
  • 1
  • 2
  • 3

在这里插入图片描述
然后会提示安装完成。
在这里插入图片描述

  • 配置环境变量
export PATH=~/anaconda3/bin:$PATH  # 添加环境变量
source ~/.bashrc  # 刷新bashrc
  • 1
  • 2

这里的export PATH填的是conda的bin文件地址。默认地址可以填上面那个到这里可以输入python和conda list查看是否安装成功。

  • 镜像源配置
    这里和python配置镜像源一样。
    打开配置文件
    vi ~/.condarc
    然后输入
channels:
  - http://mirrors.aliyun.com/anaconda/cloud/stackless
  - https://mirrors.aliyun.com/anaconda/cloud/simpleitk
  - https://mirrors.aliyun.com/anaconda/cloud/rdkit
  - https://mirrors.aliyun.com/anaconda/cloud/rapidsai
  - https://mirrors.aliyun.com/anaconda/cloud/qiime2
  - https://mirrors.aliyun.com/anaconda/cloud/pyviz
  - https://mirrors.aliyun.com/anaconda/cloud/pytorch3d
  - https://mirrors.aliyun.com/anaconda/cloud/pytorch-test
  - https://mirrors.aliyun.com/anaconda/cloud/pytorch
  - https://mirrors.aliyun.com/anaconda/cloud/psi4
  - https://mirrors.aliyun.com/anaconda/cloud/plotly
  - https://mirrors.aliyun.com/anaconda/cloud/omnia
  - https://mirrors.aliyun.com/anaconda/cloud/ohmeta
  - https://mirrors.aliyun.com/anaconda/cloud/numba
  - https://mirrors.aliyun.com/anaconda/cloud/msys2
  - https://mirrors.aliyun.com/anaconda/cloud/mordred-descriptor
  - https://mirrors.aliyun.com/anaconda/cloud/menpo
  - https://mirrors.aliyun.com/anaconda/cloud/matsci
  - https://mirrors.aliyun.com/anaconda/cloud/intel
  - https://mirrors.aliyun.com/anaconda/cloud/idaholab
  - https://mirrors.aliyun.com/anaconda/cloud/fermi
  - https://mirrors.aliyun.com/anaconda/cloud/fastai
  - https://mirrors.aliyun.com/anaconda/cloud/dglteam
  - https://mirrors.aliyun.com/anaconda/cloud/deepmodeling
  - https://mirrors.aliyun.com/anaconda/cloud/conda-forge
  - https://mirrors.aliyun.com/anaconda/cloud/caffe2
  - https://mirrors.aliyun.com/anaconda/cloud/c4aarch64
  - https://mirrors.aliyun.com/anaconda/cloud/bioconda
  - https://mirrors.aliyun.com/anaconda/cloud/biobakery
  - https://mirrors.aliyun.com/anaconda/cloud/auto
  - https://mirrors.aliyun.com/anaconda/cloud/Paddle
  - https://mirrors.aliyun.com/anaconda/pkgs/r
  - https://mirrors.aliyun.com/anaconda/pkgs/msys2
  - https://mirrors.aliyun.com/anaconda/pkgs/main
  - https://mirrors.aliyun.com/anaconda/pkgs/free
show_channel_urls: true

ssl_verify: true
allow_conda_downgrades: true
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40

最后按esc,输入:wq保存退出。

  • 配置pip镜像
mkdir ~/.pip
cd ~/.pip/
vi pip.conf
  • 1
  • 2
  • 3

然后输入

[global] 
index-url = http://mirrors.aliyun.com/pypi/simple/ 
[install] 
trusted-host=mirrors.aliyun.com
  • 1
  • 2
  • 3
  • 4

安装pytorch

pytorch安装相对很简单

  1. 点击这里进入打开pytorch官方
  2. 选择适合自己的torch版本,复制命令。注意conda和pip是分开的,cuda版本查看可以参考这篇文章
  3. 在容器中粘贴命令运行,在弹出时输入y继续运行,然后等待安装完成即可。
  4. 使用pip list/conda list查看是否有torch包,使用以下命令验证是否安装成功。
import torch
print(torch.__version__)
  • 1
  • 2

在这里插入图片描述

docker常用命令

Docker 命令大全 | 菜鸟教程

参考文献:

Pytorch Docker镜像构建教程(不同系统、CUDA、Python版本)
docker容器安装TensorFlow_gpu 版本遇到的坑。。。
Ubuntu18.04安装python3.7
27 | Ubuntu18.04.5 安装python3.7及卸载

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/752616
推荐阅读
相关标签
  

闽ICP备14008679号