So beheben Sie das Timeout während des Pip-Vorgangs in Linux

So beheben Sie das Timeout während des Pip-Vorgangs in Linux

So lösen Sie das Timeout-Problem, wenn Pip in Linux-Instanzen verwendet wird

pip ist eines der beliebtesten Python-Paketverwaltungstools. Viele Alibaba Cloud-Benutzer verwenden pip, um Systemquellen zu aktualisieren. Die Pip-Quelladressen von Alibaba Cloud lauten wie folgt:

(Standard) Öffentliches Netzwerk: mirrors.aliyun.com

Privates Netzwerk VPC-Intranet: mirrors.cloud.aliyuncs.com

Klassisches Netzwerk-Intranet: mirrors.aliyuncs.com

Beschreibung des Phänomens

Pip-Anfragen für Linux-Instanzen laufen gelegentlich ab oder schlagen fehl. Derzeit sind die folgenden öffentlichen Bilder betroffen:

CentOS

Debian

Ubuntu

SUSE

OpenSUSE

Aliyun Linux

Ursachenanalyse

Die Standardzugriffsadresse für Pip-Anfragen ist mirrors.aliyun.com, und die Instanz, die auf diese Adresse zugreift, muss auf das öffentliche Netzwerk zugreifen können. Wenn Ihrer Instanz keine öffentliche IP zugewiesen ist, kann es zu einem Timeout der Pip-Anforderung kommen.

Problemumgehung

Sie können das Problem mit einer der folgenden Methoden beheben.

Methode 1

Weisen Sie Ihrer Instanz eine öffentliche IP-Adresse zu, binden Sie also eine elastische öffentliche IP-Adresse (EIP) an die Instanz. Prepaid-Instanzen können öffentliche IP-Adressen auch durch Upgrade oder Downgrade neu zuweisen.

Methode 2

Wenn es zu einer Verzögerung bei der Pip-Antwort kommt, können Sie das Skript fix_pypi.sh in der ECS-Instanz ausführen und dann den Pip-Vorgang wiederholen.

Remote-Verbindungsinstanz.

Führen Sie wget http://image-offline.oss-cn-hangzhou.aliyuncs.com/fix/fix_pypi.sh aus, um die Datei zu erhalten.

Führen Sie das Skript aus:

VPC-Instanz: Führen Sie bash fix_pypi.sh "mirrors.cloud.aliyuncs.com" aus.

Klassische Netzwerkinstanz: Führen Sie bash fix_pypi.sh "mirrors.aliyuncs.com" aus.

Versuchen Sie den Pip-Vorgang erneut.

Nachfolgend sehen Sie den Skriptinhalt von fix_pypi.sh:

#!/bin/bash
Funktion config_pip() {
  pypi_source=$1
  wenn [[ ! -f ~/.pydistutils.cfg ]]; dann
Katze > ~/.pydistutils.cfg << EOF
[einfache Installation]
index-url=http://$pypi_source/pypi/simple/
Ende der Laufzeit
  anders
    sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pydistutils.cfg
  fi
  wenn [[ ! -f ~/.pip/pip.conf ]]; dann
  mkdir -p ~/.pip
Katze > ~/.pip/pip.conf << EOF
[global]
index-url=http://$pypi_source/pypi/simple/
[installieren]
vertrauenswürdiger Host = $pypi_source
Ende der Laufzeit
  anders
    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
}
konfiguration_pip $1

Dies sind alle Inhalte und Wissenspunkte dieses Artikels. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Lösung für das Timeout-Problem bei der Installation von Docker-Compose mit PIP
  • Lösung für das Timeout-Problem bei der Python-Pip-Nutzung
  • Detaillierte Erklärung der Lösung für langsame, Timeout- und fehlerbehaftete Installationen von Drittanbieterbibliotheken (Toolkits) mit pip in Python
  • Lösung für das Timeout-Problem bei der Installation des Python-Pakets mit PIP

<<:  So erstellen Sie eine MySQL-Datenbank (de1) mit Befehlen

>>:  Mini-Programm implementiert Listen-Countdown-Funktion

Artikel empfehlen

Implementierung der VUE-Anzeige unendlicher Ebenenbaum-Datenstrukturen

Inhaltsverzeichnis Rekursiver Aufruf der Komponen...

Detaillierte Erklärung der Tomcat-Verzeichnisstruktur

Inhaltsverzeichnis Verzeichnisstruktur bin-Verzei...

So verwenden Sie den Nginx-Proxy zum Surfen im Internet

Normalerweise verwende ich nginx als Reverse-Prox...

Kleines Problem mit dem Abstand zwischen Label und Eingabe im Google Browser

Erst Code, dann Text Code kopieren Der Code lautet...

Eine Screenshot-Demo basierend auf Canvas in HTML

Geschrieben am Anfang Ich erinnere mich, dass ich...

JS tiefe und flache Kopierdetails

Inhaltsverzeichnis 1. Was bedeutet „Shallow Copy“...

Schnelles Verständnis des Vue-Routing-Navigationsschutzes

Inhaltsverzeichnis 1. Globale Wache 1. Globale Fr...

Grundlegende MySQL-Tabellenabfragen – häufige Fehler beim Left-Join

Überblick Bei kleinen und mittelgroßen Projekten ...

So implementieren Sie Reaktionsfähigkeit beim Lernen des Vue-Quellcodes

Inhaltsverzeichnis Vorwort 1. Schlüsselelemente e...

Semantische Webseiten XHTML semantische Auszeichnung

Ein weiterer wichtiger Aspekt bei der Trennung vo...

So veröffentlichen Sie statische Ressourcen in Nginx

Schritt Platzieren Sie die vorbereiteten statisch...

Detaillierte Beispiele für Linux-Festplattengeräte- und LVM-Verwaltungsbefehle

Vorwort Im Linux-Betriebssystem sind Gerätedateie...

Was ist TypeScript?

Inhaltsverzeichnis 1. JavaScript-Probleme 2. Vort...