1. 程式人生 > 其它 >線上/離線遷移conda虛擬環境

線上/離線遷移conda虛擬環境

技術標籤:pythonanaconda

線上/離線遷移conda虛擬環境

文章目錄


前言

工作中經常使用不同的電腦除錯python程式碼,往往每隔一段時間就會安裝不同版本的包,因此需要在不同的電腦下配置環境,記錄下來供需,以及自己後續安裝手冊。
關鍵字: conda環境遷移,線上/離線,windows 10

一、線上/有網環境遷移

其實就是提供了一個檔案安裝列表,免去手動輸入多次輸入安裝命令的煩惱,適用於不同作業系統環境下。

1. 首先在conda的終端啟用自己想要遷移的環境

conda activate your_env

2. 然後生成自己的環境檔案

conda env export > your_env.yaml

3. 在另一臺機器上的conda終端克隆遷移的環境即可

conda env create -f your_env.yaml

4. 但是移植過來的環境只是安裝了你原來環境裡用conda install等命令直接安裝的包,你用pip之類裝的東西沒有移植過來,需要你重新安裝;所以仍需要到處pip安裝的list,pip匯出安裝的庫到requirements.txt

 pip freeze > requirements.txt

5. pip匯入requirements.txt中列出的庫到系統

 pip install -
r requirements.txt

二、離線環境遷移

適用於將配置好的環境安裝無網的伺服器上,但要求二者的作業系統一致。此部分是我關注的重點,平時經常使用,重點是windows10系統。

1. 安裝(測試機器和待部署機器上都需要安裝,建議在base環境安裝)

conda install -c conda-forge conda-pack

離線安裝 conda-pack,將下載好的包放在系統路徑下:

conda install --offline  XXXX..tar.bz2

ps:此命令簡單粗暴,將下載好的安裝包放入系統路徑下:(base) C:\Users\Daddy> ,直接安裝進base中。

2. 測試機器上匯出環境

condapack -n my_env -o out_name.tar.gz

3 待部署機器上匯入環境
實際操作過程中證明,需要用命令列建立資料夾,這樣最終conda acitvate my_env時,才能識別。

cd C:\SoftWare\Anaconda3\envs
mkdir  my_env

在這裡插入圖片描述

然後把壓縮包解壓入新環境中

cd C:\SoftWare\Anaconda3\envs\my_env
tar -xzvf out_name.tar.gz -C my_env

在這裡插入圖片描述

ps:將 out_name.tar.gz也放在envs環境下

4. 待部署機器上啟用環境

conda info -e  # 檢視是否存在了新的環境
conda activate my_env
conda-unpack

三、引用

很久之前查的方案,當時別人的方法是針對linux系統的,本文有點小改進。時間太久了,不記得查的誰的材料了,後續發現,補充引用。