Linux で pip 操作中にタイムアウトが発生する問題を解決する方法

Linux で pip 操作中にタイムアウトが発生する問題を解決する方法

Linuxインスタンスでpipを使用する際のタイムアウト問題を解決する方法

pip は最も人気のある Python パッケージ管理ツールの 1 つです。多くの Alibaba Cloud ユーザーは、システム ソースを更新するために pip を使用しています。 Alibaba Cloud の pip ソースアドレスは次のとおりです。

(デフォルト) パブリックネットワーク: mirrors.aliyun.com

プライベート ネットワーク VPC イントラネット: mirrors.cloud.aliyuncs.com

クラシック ネットワーク イントラネット: mirrors.aliyuncs.com

現象の説明

Linux インスタンスに対する Pip リクエストは、タイムアウトしたり失敗したりすることがあります。現在、影響を受ける公開画像は次のとおりです。

セントOS

デビアン

ウブントゥ

スーズ

オープンSUSE

アリユンLinux

原因分析

pip リクエストのデフォルトのアクセス アドレスは mirrors.aliyun.com であり、このアドレスにアクセスするインスタンスはパブリック ネットワークにアクセスできる必要があります。インスタンスにパブリック IP が割り当てられていない場合、pip リクエストのタイムアウト エラーが発生する可能性があります。

回避策

問題を解決するには、次のいずれかの方法を使用できます。

方法1

インスタンスにパブリック IP アドレスを割り当てます。つまり、インスタンスに Elastic Public IP アドレス (EIP) をバインドします。プリペイドインスタンスでは、アップグレードまたはダウングレードを通じてパブリック IP アドレスを再割り当てすることもできます。

方法2

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
関数config_pip() {
  pypi_source=$1
  [[ ! -f ~/.pydistutils.cfg ]]; の場合
cat > ~/.pydistutils.cfg << EOF
[簡単インストール]
インデックス URL = http://$pypi_source/pypi/simple/
終了
  それ以外
    sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pydistutils.cfg
  フィ
  [[ ! -f ~/.pip/pip.conf ]] の場合
  mkdir -p ~/.pip
cat > ~/.pip/pip.conf << EOF
[グローバル]
インデックス URL = http://$pypi_source/pypi/simple/
[インストール]
信頼できるホスト = $pypi_source
終了
  それ以外
    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
  フィ
}
config_pip $1

以上がこの記事の内容とポイントです。123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • PIP で docker-compose をインストールする際のタイムアウト問題の解決方法
  • Python pip 使用タイムアウト問題の解決
  • Python で pip を使用してサードパーティのライブラリ (ツールキット) をインストールするときに遅い、タイムアウトする、失敗する問題の解決策の詳細な説明
  • PIP を使用して Python パッケージをインストールする際のタイムアウト問題の解決方法

<<:  コマンドを使用してMySQLデータベース(de1)を作成する方法

>>:  ミニプログラムはリストのカウントダウン機能を実装します

推薦する

Alibaba Cloud サーバーの購入とインストール方法

1. サーバーを購入するこの例では、購入したサーバーはAlibaba Cloudです。大学生はAli...

WeChatアプレット開発の章:落とし穴の記録

最近、会社初のミニプログラムの開発に参加しました。開発経験は基本的にWebViewをベースとしたハイ...

Vueリクエストインターセプターの設定方法の詳しい説明

以下の手順に従ってください1. request.jsコンテンツ: http リクエスト インターセプ...

mini-vueレンダリングのシンプルな実装

目次序文ターゲット最初のステップ:ステップ2:ステップ3:ステップ4:要約する序文現在主流のフレーム...

HTMLポップアップ透明レイヤーインスタンスのサイズを設定でき、比例することができます

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

JavaScriptのイベントループの仕組みの分析

目次序文: 1. イベント ループとタスク キューの理由: 2. イベントループメカニズム: 3. ...

LinuxでJenkinsのパスワードを忘れる方法

1.Jenkinsのインストール手順: https://www.jb51.net/article/1...

js で 0ms 遅延タイマーを実装するいくつかの方法

目次キューマイクロタスク非同期/待機メッセージチャネルやっと付録ここ二日間、「タイムリーな setT...

JavaScript を使用して簡単なアルゴリズムを実行する方法

目次質問1件2つの方法3 実験結果と考察質問1件ご存知のとおり、 Pycharm 、 IDLE 、 ...

クラウド サーバー Ubuntu_Server_16.04.1 に MySQL をインストールしてリモート接続を有効にする方法

1. MySQLをインストールします。対応するソフトウェアをインストールするには、次の 3 つのコマ...

要素に丸い境界線を追加する border-radius メソッド

border-radius:10px; /* すべての角は半径 10px で丸められます*/ bor...

Centos7.3 Nginx をインストールして展開し、https を設定する方法

設置環境1. gccのインストールnginxをインストールするには、まず公式サイトからダウンロードし...

Alibaba Cloud Centos7.X で外部にポートを開く方法

一言で言えば、大手メーカーからクラウド サーバーを購入する場合は、セキュリティ グループに移動して、...

MySQLの外部結合と内部結合クエリの違い

外部結合の構文は次のとおりです。フィールド名を選択FROM テーブル名 1 LEFT|RIGHT|F...

js を使用して過去 1 週間、1 か月、3 か月の時間を取得する簡単な例

目次過去1週間の時間を取得する過去1か月の時間を取得する過去3か月分を取得新しい Date() と ...