1、線上伺服器導出requirement.txt pip freeze > requirement.txt 該文件生成完畢後,需要做些修改,去掉不需要的庫,否則下載的時候會出錯。 2、下載whl文件 -> packages pip download -r requirement.txt -d pac ...
1、線上伺服器導出requirement.txt
pip freeze > requirement.txt
該文件生成完畢後,需要做些修改,去掉不需要的庫,否則下載的時候會出錯。
2、下載whl文件 -> packages
pip download -r requirement.txt -d packages
pip download -r requirement.txt -d packages -i https://pypi.tuna.tsinghua.edu.cn/simple/
下載完成後packages文件夾包含所有的whl文件。
3、離線伺服器ubuntu20.04 查看是否包含python pip
這個版本的伺服器已經安裝python3.8.5,但是沒有安裝pip,從而導致安裝whl文件失敗。
沒有python的則需要自行安裝。
4、離線安裝pip
安裝pip的話需要提前安裝setuptools,所以需要下載兩個包。
------下載
setuptools下載地址:https://pypi.org/project/setuptools/
pip下載地址:https://pypi.org/project/pip/
需要註意對應的python版本
我下載的是setuptools==45.2.0 pip==23.1 他們都是要求python>=3.7,最開始我下載的是setuptools==67.6.1,但是出現了問題,最後我選擇了45版本。
-----解壓安裝setuptools
tar -xvzf setuptools-45.2.0.tar.gz cd setuptools-45.2.0 python3 setup.py install
出現了問題 No module named 'distutils.core'
百度了一圈發現是少了插件,離線的話又需要重新下載安裝
python3-distutils地址:https://pkgs.org/search/?q=python3-distutils 有時候需要人機檢驗,搜索完成後,選擇伺服器版本與python版本,大致對應即可
點擊進入詳細地址:https://ubuntu.pkgs.org/20.04/ubuntu-main-amd64/python3-distutils_3.8.2-1ubuntu1_all.deb.html
查看需要的依賴
還需要python3-lib2to3這個,因為python已經有了,直接點擊進去也是選擇對應版本即可。
插件下載地址是在download部分
直接打開http://archive.ubuntu.com/ubuntu/pool/main/p/python3-stdlib-extensions/python3-distutils_3.8.2-1ubuntu1_all.deb 這個鏈接開始下載python3-distutils_3.8.2
同理打開http://archive.ubuntu.com/ubuntu/pool/main/p/python3-stdlib-extensions/python3-lib2to3_3.8.2-1ubuntu1_all.deb 下載python3-lib2to3_3.8.2
下載完成後上傳至同一目錄
----安裝setuptools依賴
sudo dpkg -i *.deb
安裝完成後再安裝setuptools,安裝完成後import 看看有沒有問題。
-----解壓安裝pip
setuptools安裝成功後就可以安裝pip了
tar -xvzf pip-23.1.tar.gz cd pip-23.1 python3 setup.py install
安裝完成後執行pip list 查看成功與否
------安裝所有whl文件
當離線伺服器pip準備就緒後就可以安裝了
pip install --no-index --find-links=packages -r requirement.txt
執行完畢後,pip list查看,如果沒問題則轉移成功。
今ならできます。