conda pack环境迁移并下载安装离线包

背景

训练服务器为了安全起见,限制不能联网,无法直接创建虚拟环境及安装模型的依赖库,所以需要把另一台测试服务器已经部署好的虚拟环境迁移到训练服务器上,并在不能联网的情况下安装一些离线包。过程记录如下记录。


一、环境迁移

  1. 进入部署好的虚拟环境的测试服务器,并激活要迁移的环境,我这里的环境名为TSAD,所以相应的激活命令为:

conda activate TSAD

  1. 在TSAD环境下安装pack包

pip install conda-pack

  1. 在TSAD环境下进行打包,打包完成后会在当前目录下生成一个 tar.gz 文件

conda pack -n TSAD

  1. 进入到训练服务器虚拟环境文件夹下,并新建环境文件夹。
    比如我的anaconda3的环境变量路径为:/opt/anaconda3/envs/,则:

cd /opt/anaconda3/envs/

mkdir TSAD

cd TSAD

  1. 将打包好的环境压缩包放到/opt/anaconda3/envs/TSAD目录下并解压:

tar -xzvf TSAD.tar.gz

  1. 解压完毕后,就可以激活环境正常使用了。

二、离线包下载与安装

  1. 在测试服务器(能联网)上下载matplotlib包:

pip download matplotlib==3.6.0 --dest=<下载到地址> -i

https://pypi.tuna.tsinghua.edu.cn/simple

  1. 将下载好的离线包放到训练服务器并安装

pip install --no-index --find-links=<离线包路径> *.whl

三、可能会出现的问题

这里我的测试服务器和训练服务器都是liunx,python都是3.8;如果在windows上下载或者python版本不一样,可能安装时会报错:

xxx is not a supported wheel on this platform

如果出现了上述问题,可参考:
https://blog.csdn.net/happylele77/article/details/134707428
https://blog.csdn.net/lovedingd/article/details/126886431
https://blog.csdn.net/happywlg123/article/details/107281936/

但个人更建议保证下载和安装的服务器都是同系统和同python环境的,这样会更简便,如果下载和安装的服务器是不同系统,按照上述连接的方法比较麻烦而且还有可能会出现下载失败的情况。

相关推荐
IVEN_8 小时前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang9 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮10 小时前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling10 小时前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
AI攻城狮13 小时前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
曲幽13 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
曲幽1 天前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers