您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關如何解決linux中pip操作超時的問題的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
pip 是當前最流行的 Python 安裝包管理工具之一,很多阿里云用戶會通過 pip 更新系統源。阿里云的 pip 源地址有以下三處:
(默認)公網:mirrors.aliyun.com
專有網絡 VPC 內網:mirrors.cloud.aliyuncs.com
經典網絡內網:mirrors.aliyuncs.com
現象描述
Linux 實例的 pip 請求偶有超時或者失敗現象。目前,受影響的公共鏡像有:
CentOS
Debian
Ubuntu
SUSE
OpenSUSE
Aliyun Linux
原因分析
pip 請求的默認訪問地址為 mirrors.aliyun.com,要求訪問該地址的實例能訪問公網。當您的實例沒有分配公網 IP 時,會出現 pip 請求超時故障。
解決方法
您可以使用以下方法中的任意一種解決問題。
方法一
為您的實例分配公網 IP,即為實例綁定一個 彈性公網 IP(EIP)。預付費實例還可以通過 升降配 重新分配公網 IP。
方法二
一旦出現 pip 響應延遲,您可以在 ECS 實例中運行腳本 fix_pypi.sh,然后再重試 pip 操作。
遠程連接實例。
運行 wget http://image-offline.oss-cn-hangzhou.aliyuncs.com/fix/fix_pypi.sh 獲取文件。
運行腳本:
VPC 實例:運行 bash fix_pypi.sh "mirrors.cloud.aliyuncs.com"。
經典網絡實例:運行 bash fix_pypi.sh "mirrors.aliyuncs.com"。
重試 pip 操作。
以下為 fix_pypi.sh 的腳本內容:
#!/bin/bash function config_pip() { pypi_source=$1 if [[ ! -f ~/.pydistutils.cfg ]]; then cat > ~/.pydistutils.cfg << EOF [easy_install] index-url=http://$pypi_source/pypi/simple/ EOF else sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pydistutils.cfg fi if [[ ! -f ~/.pip/pip.conf ]]; then mkdir -p ~/.pip cat > ~/.pip/pip.conf << EOF [global] index-url=http://$pypi_source/pypi/simple/ [install] trusted-host=$pypi_source EOF else sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pip/pip.conf sed -i "s#trusted-host.*#trusted-host=$pypi_source#" ~/.pip/pip.conf fi } config_pip $1
感謝各位的閱讀!關于“如何解決linux中pip操作超時的問題”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。