欧美麻豆久久久久久中文_成年免费观看_男人天堂亚洲成人_中国一级片_动漫黄网站免费永久在线观看_国产精品自产av一区二区三区

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 自定義Python PyPI存儲庫

自定義Python PyPI存儲庫

2020-09-14 15:51:51 | 來源:中培企業IT培訓網

Python默認從PyPI存儲庫下載其依賴項。它包含最新版本(穩定或不穩定)和各種數量的軟件包。那么定制私有軟件包存儲庫的需求是什么?想要知道這個問題的答案,首先來說一下依賴管理:您可以顯式控制軟件包的依賴關系,而不考慮版本棄用或最新的向后不兼容版本。當然,這可以通過在requirements.txt中定義版本來完成,但是要確保我們得到的每個軟件包都像我們期望的那樣,最好使用自定義存儲庫。

PyPI服務器棄用TLS v1.1,v1.0

PyPI服務器已不再支持TLS 1.0 / TLS 1.1版本的設備以下載軟件包。

“我將看到可能在截止日期之前組織一些預定的TLSv1.0和TLSv1.1的“掉電”,以嘗試幫助人們找到需要更新的地方。任何計劃的限電措施將在發生之前發布到status.python.org。”

因此,升級Python:TLS v1.2很快將成為必需,現在它已成為強制性的。具有Ubuntu 12.04或更低版本的設備具有TLS v1.1,這意味著這些設備無法從默認python軟件包管理服務器下載任何python軟件包。通過在終端中運行以下命令來檢查TLS版本。

python2 -c "import urllib2,json; print(json.loads(urllib2.urlopen.read())['tls_version'])"

有一些解決方法,例如明確地說要從PyPI服務器下載PIP。

pip install --index-url = scapy

這已經工作了一段時間,然后它也并沒有起作用。

在這里,我們只有兩個選項,升級TLS版本或使用自定義存儲庫。經過一段時間的升級后,TLS也變得不可能了,因為您需要升級openssl和python密碼模塊。無法升級python模塊,因此我們陷入了僵局,這是自定義存儲庫可以拯救的地方。

  建立自定義存儲庫

您需要執行以下操作來創建自己的自定義python存儲庫。

1. 托管Ubuntu服務器

2. 帶有TLS v1.2的Python環境

3. 公共區域

首先登錄到您的Ubuntu服務器,然后在require.txt文件中列出所有所需的依賴項,如下所示

boto3 == 1.4.4

botocore == 1.5.90

click == 3.1coloredlogs

== 8.0

configobj == 5.0.6

docutils == 0.13.1

futures == 3.1.1

jmespath == 0.9.3

pexpect == 3.1

pyOpenSSL = = 0.15.1

pyasn1 == 0.4.2

pycrypto == 2.6.1

python-dateutil == 2.6.1

請求== 2.5.3

s3transfer == 0.1.10

scapy == 2.4.0

六個== 1.5.2

speedtest- cli == 2.0.0

urllib3 == 1.7.1

virtualenv == 15.2.0

websocket-client == 0.16.0

wheel == 0.24.0

ndg-httpsclient

distribution

pip == 1.5.4

然后創建Python虛擬環境以安裝這些依賴項。

pip install virtualenv

virtualenv repo

source repo/bin/activate

mkdir /home/batman/py-cache

在虛擬環境中,現有的pip版本應為1.5.4。

pip install -r requirements.txt --no-use-wheel --download="/home/batman/py-cache"

現在,所有軟件包都已下載到您的Ubuntu服務器中,我們需要將所有軟件包組織在標準目錄結構中,以便PIP客戶端可以識別模塊。為此,我編寫了一個小腳本,在py-cache目錄中運行它,它將為您完成工作。

為os.listdir('/ home / batman / py-cache')中的文件名導入os :

嘗試:

package_name = filename.split('。')[0] .split('-')

del package_name [-1]

package_name ='-'。join(map(str,package_name))

打印package_name

os.system('mkdir%s'%package_name)

os.system('mv%s%s /'%(filename,package_name))

除外e:

打印'ERROR:'

打印'e'

確保已移動所有包裝。如果未移動任何內容,請手動創建目錄,然后將tar球移動到其中。我們快到了!讓我們托管存儲庫。

首先安裝托管客戶端

pip install twisted

默認情況下,主機從端口8080啟動,請確保沒有其他進程擁有它。

lsof -i:8080

使您的終端進入py-cache目錄

twistd -n web --path .

您已經建立了自己的自定義存儲庫,現在將其托管在Ubuntu服務器的端口8080中。

  通知PIP客戶我們的自定義存儲庫

在您的客戶中

vim /etc/pip.conf

添加您的自定義存儲庫URL

[global]

index-url = http://10.1.10.69:8080

然后導出環境變量PIP_CONFIG_FILE。

導出PIP_CONFIG_FILE = / etc / pip.conf

而已。現在,通常的如下pip安裝將從您的自定義存儲庫安裝python軟件包。

  點安裝scappy

在這里,您可以完全控制需要提供的依賴性以及需要進行身份驗證和禁止的客戶端。希望我已經與大家分享了有用的信息。

以上就是關于自定義Python PyPI存儲庫的全部內容,想了解更多關于Python的信息,請繼續關注中培偉業。

標簽: 數據庫
主站蜘蛛池模板: 成人午夜爽A片免费视频 | 嘿咻嘿咻免费无码专区在线看 | 风流老太婆大BBWBBWHD视频 | 女人被添全过程A片久久AV | 久99热| 欧美人与禽猛交乱配 | 久久人人爽人人爽人人片av超碰 | 日本喷奶水中文字幕视频 | 四虎国产精品免费久久久 | 国产农村妇女精品一二区 | 亚洲AV无码乱码国产麻豆穿越 | 亚洲精品污污 | 亚洲欧美在线观看, | 亚洲精品专区在线观看 | 精品国产人妻一区二区三区 | 嫩草视频在线免费观看 | 中文字幕在线免费看线人 | 亚洲AV永久无码国产精品久久 | 丰满迷人的少妇特级毛片 | 日本XXwwWXXXX网站 | 国产精品无码翘臀在线看 | 综合久久久久综合 | JAPANESE日本爆乳巨大 | 最新国产在线视频 | 日本无遮羞调教打屁股 | 国产日韩欧美亚欧在线 | 内射老妇女BBWXOGOD | 中文字幕亚洲欧美专区 | 怡红院成免费人视频 | 中文字幕色AV一区二区三区 | 2022色婷婷综合久久久 | 五月婷六月婷婷俺也去 | 国产成人精品怡红院在线观看 | 亚洲日本香蕉视频观看视频 | 欧美精品色婷婷五月综合 | 久久久久国产精品嫩草影院 | JIZZ中国JIZZ在线播放 | 成年女美黄网站大全免费播放 | 国产成人精品福利网站 | 97超级碰碰碰免费公开在线观看 | 香港经典三级av在在线观看 |