指定位置安裝conda虛擬環境或者包

前言

配置環境一直都是一個頭疼的事,docker的出現可以說是極大的方便了程序狗配置環境的痛苦,只需要配置一次,就可以永久使用,豈不是美哉

但存在一個問題就是,當我們編譯好dockerfile文件,使用鏡像一段時間後,開始一個新的項目時,往往需要一些新的python包或者需要新建一個conda虛擬環境,這個時候你可以申請一個容器後正常操作需要的包或者環境,但當這個容器生命週期一結束,下次重新申請一個容器時,新建的這些東西又都沒了,如果每次開始工作前都來一波新建虛擬環境,我相信每個人都會瘋狂的。

如果你的鏡像不是在服務器上,或者自己有權限修改鏡像,你可以用docker裏面的commit命令來提交修改的副本從而形成一個新的鏡像,用法:

$ sudo docker commit -m "Added json gem" -a "Docker Newbee" 0b2616b0e5a8 ouruser/sinatra:v2

其中,-m 來指定提交的說明信息,跟我們使用的版本控制工具一樣;-a 可以指定更新的用戶信息;之後是用來創建鏡像的容器的 ID;最後指定目標鏡像的倉庫名和 tag 信息。創建成功後會返回這個鏡像的 ID 信息。(摘抄於:https://www.cnblogs.com/lsgxeva/p/8746644.html)

但是我並沒有權限修改鏡像。。。

pip安裝新包

首先需要選定一個固定的文件夾,這個文件夾不會隨容器的消失而消失,對於服務器一般用一個這樣的文件夾,比如home或者userhome等等,在pip安裝包只要將包安裝到這個指定的路徑上,下次重新申請一個新容器時,只要添加這個路徑到環境中就OK,具體操作如下:
1)指定位置安裝:

pip install --target='/home/pylib' opencv-python

2)添加到環境:

export PYTHONPATH=$PYTHONPATH:/home/pylib/

conda新建虛擬環境

主要參考:https://www.cnblogs.com/lemonbit/p/7068091.html
https://blog.csdn.net/Frank_LJiang/article/details/104456564
1)指定位置新建虛擬環境

conda create --prefix=/home/conda_env/mmcv python=3.7

注意:路徑/home/conda_env是自己先建立好的,也就是必須存在這個路徑,後面的mmcv就是你想給這個環境取的一個名稱

2)激活這個環境

source activate /home/conda_env/mmcv

注意:Linux下是source,Windows下是conda

3)可以在這個虛擬環境下,正常安裝包,筆者沒有發現錯誤,例如

pip install numpy
conda install numpy

4)退出該虛擬環境

deactivate

5)刪除該虛擬環境

conda remove --prefix=/home/conda_env/mmcv --all
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章