利用 Docker 配置 Pytorch 镜像流程

  • Post author:
  • Post category:其他



目录


假设你已经安装好了Ubuntu


1 安装 Docker


2 安装 Pytorch 镜像


假设你已经安装好了Ubuntu

1 安装 Docker

打开终端,先更新下apt

sudo apt-get update

安装一些常用的工具

sudo apt-get install -y vim net-tools openssh-server

安装docker

sudo apt-get install -y docker.io

docker的一些设置

systemctl start docker    # 启动docker
systemctl enable docker    # 设置自启动
sudo gpasswd -a ymzh docker    # 将用户加入组
sudo service docker restart    # 重新启动docker
newgrp - docker    # 更换组
docker version     # 查看docker

docker 一些常用命令

docker images    # 查看docker 中存在的镜像

docker ps -a    # 查看docker 中存在的容器( -a 表示运行中和历史运行过的容器 )

docker rm -f $(docker ps -aq)  # 删除所有容器,慎用

2 安装 Pytorch 镜像

先 pull 一个自己看中的pytorch镜像,并运行这个镜像。


docker pull pytorch/pytorch:1.6.0-cuda10.1-cudnn7-devel    # pull 镜像


# 运行docker pull去拉取pytorch镜像,由于我们要使用gpu版本的pytorch,所以pull的是含有cuda和cudnn的,
# 此外需要安装devel版,不安则不能查看到gpu信息,并且不能对cuda进行编译,
# 如果实际项目中需要使用cuda进行编译,则会失败
#                         ———— 摘自 https://blog.csdn.net/qq_37285386/article/details/107673246

docker run -i -t pytorch/pytorch:1.6.0-cuda10.1-cudnn7-devel /bin/bash    # 运行镜像, 将会创建一个容器

同样,安装一些常用的工具

apt-get update
apt-get install -y vim openssh-server net-tools

ssh -V    # 查看 ssh 的版本,以确定是否安装成功
ps -e | grep ss h    # 查看ssh的状态
/etc/init.d/ssh status    # 查看ssh的状态
/etc/init.d/ssh restart   # 重启ssh 

ifconfig    # 查看ip地址

添加镜像源,及删除。

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --set show_channel_urls yes    # 安装时, 显示通道来源

# 删除镜像源, 如果需要的删除的话。
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

查看安装了哪些包

pip list

conda list

查看 python 版本以及 cuda 版本

python -V
nvcc -V

创建一个 txt 文件,文件内容为需要安装的包

vim re.txt    # 创建一个名为 re.txt 的文件

# 进入编辑模式, 写入以下内容
numpy
matplotlib
scipy
mne
networkx
jupyter
notebook
pathlib
progress
progressbar2
pygal
scikit-learn
scikit-fuzzy
seaborn
torchinfo
pywavelets

# 保存退出
[Esc] + [:wq]

批量安装

pip install -r re.txt

保存容器,及保存镜像。

# 提交容器为镜像
docker commit -m="packages add re.txt install ssh,vim,net-tools" -a="ymzh" e224834a32ef pytorch1.6.0-cuda10.1-py3.7.7:latest

# 此时可删除容器, 避免保存镜像时空间不足

docker images #    查看刚保存的镜像 image_id

# 保存镜像为 .tar 压缩包
docker save -o pytorch1.6.0-cuda10.1-py3.7.7.tar image_id

如果空间实在不够用,需要扩展空间,请参考

VMware 扩展Ubuntu虚拟机的磁盘空间 – ZHJ0125 – 博客园

参考:

docker 安装参考1. Pytorch 安装参考2.

1.

Linux Ubuntu apt-get安装docker_迷失的蜗牛的博客-CSDN博客_apt-get安装docker

2.

10分钟学会Docker的安装和使用!_lynnhgwang的博客-CSDN博客_docker的安装使用

3.

(本人自用)将本地的anaconda环境封装到docker中并导出为压缩包_我一直在矛盾的博客-CSDN博客_将电脑上的anaconda虚拟环境整合到docker中去



版权声明:本文为imyLove7原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。