在本机ubuntu20.04下配置的虚拟环境,想到将其整个放到新建的docker(ubuntu20.04)下使用,操作步骤如下:
# 一、在ubuntu1下打包虚拟环境
# 安装conda-pack
pip install conda-pack# 进入需要打包的虚拟环境,这里将目标虚拟环境名称为goal_env
conda activate goal_env
# 打包虚拟环境并压缩成.tar.gz格式
conda pack --name goal_env -o goal_env.tar.gz'''
如果报错:CondaPackError: Cannot pack an environment with editable packages
installed (e.g. from `python setup.py develop` or`pip install -e`). Editable packages found:
'''# 替换上述打包命令
conda pack --name goal_env -o goal_env.tar.gz --ignore-editable-packages# 在ubuntu2下放置目标虚拟环境,注意该环境下应该可以使用conda
# 压缩好的虚拟环境放到xxx/anaconda3/envs/路径下,解压
tar -zxvf goal_env.tar.gz
cd goal_env/
source ./bin/activate# 查看环境是否存在
conda env list# 成功将虚拟环境移植到当前系统,打开python,查看torch
# 发现报错:name '_C' is not defined
#解决:
pip install Cython#再次加载torch,还是报错:ModuleNotFoundError: No module named 'typing_extensions'
#解决:
pip install typing_extensions
至此,打包的虚拟环境可以整个移植到其他系统下使用。
参考:
https://blog.csdn.net/qq_45634934/article/details/131741139