使用Conda Pack進行環境打包遷移
1 背景
伺服器A已安裝好conda環境,而伺服器B因無網路只能進行離線安裝。
我們可以使用conda pack命令將伺服器A的環境打包,然後透過隨身碟等移動裝置傳輸至伺服器B進行離線安裝。
2 源伺服器A的環境打包
2.1 安裝 conda-pack。
使用命令 conda install conda-pack
或者 pip install conda-pack
。
conda install conda-pack
# 或者
pip install conda-pack
2.2 檢視伺服器中已有的conda環境。
命令conda info -e
。
conda info -e
2.3 打包環境。
命令 conda pack -n env_name
, 即 conda pack -n 環境名
。
-
此時可能會報錯:
Collecting packages... 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 -n env_name --ignore-editable-packages
即可。
3 目標伺服器B 環境安裝
假設已經將伺服器A打包的環境複製到伺服器B使用者目錄下/home/abc/env_name.tar.gz
,伺服器B的anaconda安裝目錄位於 /home/abc/anaconda3/
,那麼按照下面步驟進行操作:
3.1 在anaconda環境目錄下建立資料夾
命令 mkdir -p /home/abc/anaconda3/envs/環境名
。
3.2 將打包的環境安裝包解壓到相關目錄
命令 tar -xzvf 環境名.tar.gz -C /home/abc/anaconda3/envs/環境名
。
3.3 檢視是否遷移成功
# 檢視所有環境
conda info -e
# 啟用環境
conda activate 環境名
# 檢視安裝包
conda list
4 參考連結
- 使用conda pack進行環境遷移(步驟很詳細)
- 【Pytorch】Conda環境pack打包遷移報錯處理