移植已有的python环境至远程服务器(不需要联网重新下载相关环境)

一:conda-pcak使用:

由于实验室服务器不能联网,唯一的方法是使用系统代理,方法可以使用 ccproxy,这个可以在后续博客中介绍,但该方法还是需要重新联网下载环境。如果有一个环境在已有的电脑上可以直接使用,则可以使用conda-pcak对已有的python环境进行打包,上传至服务器上即可。
这里展示将云服务器(autodl)能运行成功的环境安装至实验室服务器上。

二:conda常见的使用指令:

1:查看conda管理的python环境:

conda info –envs

在这里插入图片描述

可以看到服务器下conda管理了1个环境(base)

2:创建一个新的python环境:

conda create -n py3.6 python=3.6

Py3.6是新创建的python环境的名字,python=3.6是环境的版本

3:对已经存在的python环境进行复制:

conda create -n py36 –clone py3.6

py36是复制后的python环境的名字,py3.6是需要复制的python环境的名字

4:切换到对应的python环境:

conda activate base

可以切换到base环境中。

三:打包某个python环境

1:进行python环境打包:

在打包之前如果没有conda-pack包的话,需要安装conda-pack

conda install -c conda-forge conda-pack

移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第1张图片

base环境疑似不能直接打包?

在这里插入图片描述
将base环境进行克隆为虚拟环境

conda create -n nnUNet --clone base

移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第2张图片

conda pack -n nnUNet -o nnUNet.tar.gz --ignore-editable-packages

注意--ignore-editable-packages
移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第3张图片

这里解释一下,如果存在本地安装的环境,或者依赖其他编译的环境 则选择忽略,如果不添加–ignore-editable-packages ,会报错,通常这种情况选择忽略在新的的环境中自己本地安装即可

移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第4张图片
nnUNet是需要打包的已存在的python环境,nnUNet.tar.gz是打包后压缩包的名称,当前目录下出现了一个nnUNet.gz的压缩包

2:传输这个压缩文件nnUNet.tar.gz到你所需要的服务器上:

使用MobaXterm传输至anaconda3/envs/

3:解压缩nnUNet.tar.gz:

创建文件:nnUNet,因为我们是要将压缩文件解压到py3666中,这个创建的名字到时候就是你的虚拟python环境的名字。

mkdir nnUNet

解压缩:

tar -zxvf nnUNet.tar.gz -C nnUNet

4:激活环境:

conda activate nnUNet

可以看到anaconda3/envs目录下的文件已有nnUNet环境。

特别强调的问题:
这种python环境打包,只能在通一种操作系统中进行,比如你在windows平台上安装的anaconoda,打包anaconda中的python环境到linux服务器中,这样的是用不了的。

本地安装可编辑库时,cd至自己的可编辑库中,采用命令:

python setup.py develop

即可
移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第5张图片

5:离线安装python库

参考https://www.cnblogs.com/yan-test/p/16225781.html

(1) 首先,查看当前python支持的依赖包:

pip debug --verbose 查看支持安装的依赖包的版本信息
Compatible tags字样下列出的文件名即为可匹配的标签

移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第6张图片

(2) 下载相关库

然后再到python官网https://pypi.org/project 查找对应的依赖包即可,例如本系统支持cp38-cp38-manylinux_2_27_x86_64格式的,则安装库时选择相应的版本
或者去清华源进行搜索
https://pypi.tuna.tsinghua.edu.cn/simple/库名
移植已有的python环境至远程服务器(不需要联网重新下载相关环境)_第7张图片
这边我以安装hdbsacn为例,这里下载tar.gz文件,之后上传至服务器。

(3) 安装

安装whl包的方法:
cd 到文件的存放目录后,再执行命令:pip install numpy-1.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 即可安装完成。
安装tar.gz包的方法:
tar -zxvf 压缩文件名.tar.gz解压 压缩包,再进入解压的目录下,执行命令:python setup.py install 即可。
安装zip包
命令格式:unzip filename.zip 解压后,python setup.py install 即可
卸载安装包:
python setup.py install --record files.txt 记录安装后文件的路径
cat files.txt | xargs rm -rf 删除这些文件

你可能感兴趣的:(python,服务器,开发语言)