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)を作成する方法

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

推薦する

JavaScript プロトタイプの詳細

目次1. 概要1.1 プロトタイプとは何ですか? 1.2 プロトタイプを入手する2. プロトタイプの...

MySql バージョンの問題に対する完璧なソリューション sql_mode=only_full_group_by

1. sql_modeを確認する @@sql_mode を選択照会された値は次のとおりです。 ON...

CSS スティッキーフッター実装コード

この記事では、CSS スティッキー フッターの実装コードを紹介し、共有します。詳細は次のとおりです。...

CSS3は、変換変形とイベントを組み合わせて扇形のナビゲーションを完成させます。

この場合、transition という単語を間違って書いたため、午後中ずっとそれに取り組みました。本...

MySQLコンテナ間のレプリケーション構成例の詳細な説明

背景先週、会社で MySQL レプリケーションのトレーニングを受けたので、今週末は学んだことを実践す...

MySQL の日付関数と日付変換およびフォーマット関数

MySQL は、膨大なユーザーベースを持つ無料のリレーショナル データベースです。この記事では、My...

Linux netstatコマンドの詳細な説明

目次Linux netstat コマンド1. TCP接続ステータスの詳細な説明2. コマンド形式3....

タイプファイルの入力ボタン機能の研究

<br />一部のWebサイトでアップロードする場合、「参照」ボタンをクリックすると[フ...

vue-router 4 の使用例の詳しい説明

目次1. インスタンスをインストールして作成する2. vue-router4の新機能2.1 動的ルー...

レンダリング関数と JSX の詳細

目次1. 基本2. ノード、ツリー、仮想DOM 1. 仮想DOM 3. createElementパ...

Linux の netstat コマンドの詳細な紹介

目次1. はじめに2. 出力情報の説明3. netstatの共通パラメータ4. netstatネット...

Mysql テーブルで利用可能な最小 ID 値を照会する方法

今日、研究室のプロジェクトを見ていたとき、私にとって「難しい」問題に遭遇しました。実は、それは私があ...

mysql データ型変換の実装

1. 問題下図のような表があり、結果値がreference_high値より大きいデータを見つける必要...

JavaScript クロージャの詳細

目次1. クロージャとは何ですか? 2. 閉鎖の役割序文: JavaScript部分ではクロージャが...