本文介绍:

为了便于描述,假定有两台ubuntu主机,分别为A主机和B主机场景为将A主机上已安装好的python3.7的环境移植主机B中。

<str

为了便于描述,假定有两台ubuntu主机,分别为A主机和B主机场景为将A主机上已安装好的python3.7的环境移植主机B中。

环境移植的方法可以方便的解决多主机同时部署同一个python环境问题,也可以解决由于其他原因python环境无法在某台主机上正常安装问题

1、在主机A上创建py37环境

图形界面的,可以anaconda方法进行创建没有图形界面的,可以利用conda命令进行创建我们创建一个python3.7的环境,并命名py37。

py37环境创建完成以后,激活该环境,并安装相应的包,比如安装Numpy (pip install numpy).

2、把环境数据打包

找到主机A上py37环境的安装位置linux统一般会在 ~/.conda/envs目录下,也可能anaconda安装目录的 envs目录下,如果找不到,在激活当前py37环境下(conda activate py37),使用命令which python 可以显示当前环境的位置,如下图

 进入py37环境的目录下,如下图py37即为py37环境的数据

使用  如下命令数据打包打包以后就直接py37_envs.tar.gz复制到主机B上。

tar czvf py37_envs.tar.gz ./py37/*

3、主机B上的配置

将py37_envs.tar.gz复制到主机B上任意位置,本例直接得到到/root/目录下。

解压命令如下解压之后,在/root目录下会有py37的目录

tar cxvf py37_envs.tar.gz

 之后,将py37环境添加到主机B的路径

export PATH=/root/py37/bin:$PATH

此时,可以命令行输出 python 测试是否可以正常打开,如下图

4. 修改pip指向,以使pip可以正常工作

因为在主机B上Python3.7的环境是从主机A复制而来的,所以pip指向python路径可能是不一样的。比如在本例中,主机A上pip指向下图红框路径:/home/test/.conda/envs/py37/bin/python

 而在主机B上,python3.7的路径是/root/py37_envs/bin/python,所以如果不修改pip指向pip无法使用,即不能安装新包到python3.7中(这里假设主机B也是可以联网的)

修改方法

打开主机B上的pip文件pip3文件,将第一行的路径(即上图中红框中的路径修改为主机B上python3.7的路径,在本例中为/root/py37_envs/bin/python

 修改完成以后,可以使用pip -V测试是否正常,可以安装新的包试试,比如

pip install dnspython

原文地址:https://blog.csdn.net/FY_2018/article/details/127137564

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_35878.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注