python 通過pip freeze、dowload打離線包及自動安裝的過程詳解(適用於保密的離線環境
python的pip是其包管理工具,相當方便好用。本文只介紹pip 如何通過其freeze命令打離線包,及其離線包的安裝指令碼。這個知識點,特別適用於不適合連通網際網路,裝置需要物理隔絕,保密要求嚴格的客戶環境。
環境
作業系統: Centos 7.7
python 版本: 2.7
客戶網路環境: 離線
研發網路環境:聯網
pip 安裝
(1)下載rpm包
首先研發環境(聯網),去 https://pkgs.org/download/python-pip選擇合適的pip rpm離線包下載,如下圖:
選擇一個rpm連結,點選進去,然後在下載模組,選擇二進位制檔案相關下載地址下載即可【CoderBaby】,如下圖:
(2)rpm 安裝pip離線包
rpm -ivh python2-pip-8.1.2-10.el7.noarch.rpm (rpm離線包完整路徑名)
(3)升級pip
通過舊版的pip install 命令升級pip到最新版本,具體如下:
pip install packages/pip-20.2.3-py2.py3-none-any.whl (從pypi官網下載.whl包: https://pypi.org/project/pip/)
(4)pip freeze 將系統已安裝的包按照需要的格式打包
具體命令如下:
pip freeze >requirements.txt(重定向,並且指定輸出檔名稱、格式、路徑)
結果如下:
(5)pip download 下載離線包
具體命令如下:
pip download -d packages -r requirements.txt (將requirements.txt裡指定的包名和版本—【可根據需要,編輯requirements.txt,刪除不需要打包的包】打包到預設packages資料夾下)
結果如下圖:
(6)通過shell指令碼安裝離線包
具體shell指令碼命令如下:
pip install --no-index --find-links=packages -r requirements.txt
說明:
首先將packages資料夾和requirements.txt拷貝至離線伺服器:packages資料夾放在任意目錄下,requirements.txt放在同級目錄
相關目錄結構如下圖:
注:
python 2.6.6 升級到 2.7
centos 6自帶的python 版本為2.6.6,需要升級到2.7,詳情可參考:https://www.jb51.net/article/202100.htm
【@2020/12/7,國內各大映象似乎棄用CentOS 6了,參見:https://www.v2ex.com/t/733142】
到此這篇關於python 通過pip freeze、dowload打離線包及自動安裝的過程詳解(適用於保密的離線環境的文章就介紹到這了,更多相關python 打離線包及自動安裝內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!