ubuntu下Anaconda环境安装GPU的pytorch(docker镜像)

文章讲述了在实验室环境中如何为团队成员分配Docker容器,包括基础环境配置、Anaconda的安装、PyTorch和CUDA的配置过程,以及遇到的Conda错误和解决方案,重点介绍了清华镜像源的使用和更换以确保GPU版本的PyTorch安装。
部署运行你感兴趣的模型镜像

实验室需要给每个人分配docker的container环境,为了节省系统的空间,打算把anaconda和深度学习的开发环境配置好拉取镜像以省时间。

基础环境配置

apt更新了清华源
安装了基础环境
gcc
vim Linux文本编辑库
openssh-server ssh远程连接库
net-tools 包含ifconfig,netstat等指令
iputils-ping 包含ping指令
wget 下载文件指令
curl 网络请求指令
git 版本控制

annaconda配置

官网wget拉取linux的annaconda下载后,bash安装即可(因为实验室服务器没有梯子,个人是下载到了本地然后scp传输到了服务器)

pytorch,cuda,cudnn配置

起初使用annaconda自带的环境,每次配置时间过长,而且一直报错👇

CondaError: Downloaded bytes did not match Content-Length

在安装pytorch的时候安装到半路,显示CondaError: Downloaded bytes did not match Content-Length。

网上的解决方法是添加清华源的镜像,但我的已经是清华源镜像了,所以解决方法是把timeout放大,600还是不行,把时间延长到1000.0就成功安装了。命令如下:

conda config --set remote_read_timeout_secs 1000.0

但是这个解决方法并不是很有效果👆

后来网上查询清华镜像问题,很多都是不全的镜像,安装起来很容易装成cpu版本。

GPU的pytorch安装教程
👆最后采取的这一篇的安装方法。

conda安装踩坑

镜像源如果不全或者当天挂了,容易在找包的时候报错,
个人尝试这个源没问题👇 更换文件使用 vim ~/.condarc 然后把下面的这一坨更换覆盖了就行

channels:
  - defaults
show_channel_urls: true
channel_alias: http://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2

  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
custom_channels:
  conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

想恢复源 把~/.condarc删除了
然后执行

换回默认源:conda config --remove-key channels

在安装pytorch的时候,首先
官网的推荐链接中
在这里插入图片描述
其中的 -c pytoch -c nvidia 建议去掉 因为有这个会默认按照annaconda的官网地址下载。
更换源之后
可以去搜索一下源是否能下载想使用的包

conda search pytorch
conda search cudatoolkit

下载的时候指令最好是 pytorch和cuda一起安装,要不然会默认安装cpu版pytorch

整体安装流程👇

安装完anaconda后,本地安装的cuda显示正常
在这里插入图片描述

然后换源操作
(base) root@finaltest:~# vim ~/.condarc

在这里插入图片描述

更换后保存退出。输入
conda info查看源已经被替换

在这里插入图片描述
conda search pytorch 看到cloud/pytorch 源已经换成功
在这里插入图片描述
在这里插入图片描述
很奇怪 换到这个镜像后可以找到pytorch-cuda了,直接使用了官网指令,记得去掉后面的-c
conda install pytorch torchvision torchaudio pytorch-cuda=11.8
在这里插入图片描述还是加载不上👆
在这里插入图片描述
在这里插入图片描述

打算安装这个cuda11.8的版本
(base) root@finaltest:~# conda install pytorch=2.1.0 pytorch-cuda=11.8
结果加载过慢,打算换成cudatoolkit
在这里插入图片描述
(base) root@finaltest:~# conda install pytorch=2.1.0 cudatoolkit=11.8.0

如果查询不到或者安装失败 可以看看这个教程 👇
GPU的pytorch安装教程

如果nvcc -V查询不到cuda,使用👇方法

加nvcc环境变量

接下来使用可以用以下指令复制环境,方便对于gpu的使用

conda create -n <new_conda_name> --clone bash

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### 如何在 Ubuntu安装 PyTorchGPU 版本并使用镜像源 #### 使用 Conda 安装 PyTorch (GPU 加速) 对于基于 Anaconda 或 Miniconda 的环境,可以通过指定版本和 CUDA 配置来安装 PyTorch。以下是具体方法: 1. **配置 Conda 环境** 创建一个新的虚拟环境 `env_name` 并激活它: ```bash conda create -n env_name python=3.7 conda activate env_name ``` 2. **安装特定版本的 PyTorch 和 CUDA 支持** 如果需要安装带有 CUDA 10.1 支持的 PyTorch 1.3.0,则可以运行以下命令[^2]: ```bash conda install pytorch=1.3.0 cudatoolkit=10.1 -c pytorch ``` 此外,如果网络条件不佳,可以选择清华 TUNA 镜像源手动下载 `.tar.bz2` 文件,并通过本地方式安装: ```bash conda install --use-local /path/to/pytorch-1.3.0-py3.7_cuda10.0.130_cudnn7.6.3_0.tar.bz2 ``` --- #### 使用 Pip 安装 PyTorch (GPU 加速) Pip 是另一种常用的 Python 包管理工具。为了确保 GPU 支持正常工作,需根据目标系统的 CUDA 版本来选择合适的 PyTorch 轮子文件。 1. **更新系统包** 在安装之前,建议先更新系统中的依赖项[^4]: ```bash sudo apt-get update && sudo apt-get upgrade sudo apt-get install python3-pip protobuf-compiler libprotoc-dev ``` 2. **安装支持 CUDA 的 PyTorch** 假设当前使用的操作系统为 Ubuntu 22.04,并希望安装 PyTorch 1.12.1(CUDA 11.6),则可执行如下命令[^3]: ```bash pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 torchaudio==0.12.1 \ --extra-index-url https://download.pytorch.org/whl/cu116 ``` 若需要切换到其他 CUDA 版本,请访问官方索引页面调整 URL 中的 `cuXX` 参数。 --- #### 利用 Docker 构建隔离化的 PyTorch-GPU 开发环境 Docker 提供了一种轻量级容器化解决方案,能够有效规避不同项目间可能存在的冲突问题[^5]。构建过程大致分为以下几个部分: 1. **安装 Docker 工具链** 参考官方文档完成基础设置后加载 NVIDIA 显卡驱动程序插件: ```bash curl -fsSL https://get.docker.com | sh distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \ && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \ && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get update && sudo apt-get install nvidia-container-toolkit ``` 2. **拉取预编译好的 PyTorch 镜像** 下载包含最新版 PyTorchGPU 支持的基础映像: ```bash docker pull nvcr.io/nvidia/pytorch:22.09-py3 ``` 3. **启动交互会话测试功能** 运行下面这条指令进入 shell 查看是否成功识别硬件资源: ```bash docker run --gpus all -it --rm nvcr.io/nvidia/pytorch:22.09-py3 bash python -c "import torch; print(torch.cuda.is_available())" ``` --- #### 总结 上述三种途径分别适用于不同的场景需求——Conda 更适合科研人员快速搭建跨平台一致性的实验场所;而 Pip 方法灵活性更高,在生产环境中尤为常见;至于借助于 Docker 技术封装整个堆栈的方式则是大型团队协作开发的理想之选。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值