Ich versuche herauszufinden, ob es eine Möglichkeit gibt, die Verwendung des Flags --cert zum Pipen zu vermeiden, wenn ich Pakete bei der Arbeit installiere. Es gibt ein Problem mit dem Proxy, bei dem ich nur die Pakete herunterladen kann, die ich benötige, wenn ich dieses Flag gebe, obwohl die mycert.crt
Datei hinzugefügt wurde /usr/local/share/ca-certificates
und ausgeführt wird sudo update-ca-certificates
.
Ein Beispiel für die Nachrichten, die ich sehe, ist:
$ pip install "virtualenv>=1.10.1"
Downloading/unpacking virtualenv>=1.10.1
Could not fetch URL https://pypi.python.org/simple/virtualenv/: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed>
Will skip URL https://pypi.python.org/simple/virtualenv/ when looking for download links for virtualenv>=1.10.1
Could not fetch URL https://pypi.python.org/simple/: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed>
Will skip URL https://pypi.python.org/simple/ when looking for download links for virtualenv>=1.10.1
Cannot fetch index base URL https://pypi.python.org/simple/
Could not fetch URL https://pypi.python.org/simple/virtualenv/: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed>
Will skip URL https://pypi.python.org/simple/virtualenv/ when looking for download links for virtualenv>=1.10.1
Could not find any downloads that satisfy the requirement virtualenv>=1.10.1
Cleaning up...
No distributions at all found for virtualenv>=1.10.1
Storing complete log in /tmp/tmpwW5qXD
Dies kann gelöst werden mit:
pip install --cert=/usr/local/share/ca-certificates/mycert.crt
Ich würde es jedoch vorziehen, dies nicht zu tun (da ich sicher bin, dass andere Anwendungen auf dieses Problem stoßen).
Ich verwende Linux Mint 15 (obwohl ich zuvor unter Ubuntu 12.04 sehr ähnliche Probleme hatte), pip Version 1.4.1.
linux
ubuntu
linux-mint
ssl
certificate
Ian Lee
quelle
quelle
Antworten:
Sie können dies über die Pip-Konfigurationsdatei in
$HOME/.pip/pip.conf
oder%APPDATA%\pip\pip.ini
unter Windows einstellen :Mit dieser Datei können Sie im Grunde alle Flags setzen, die von pip verwendet werden. Die vollständige Dokumentation finden Sie unter https://pip.pypa.io/en/latest/user_guide/#configuration
quelle
Für mich hat keine der Problemumgehungen in der Konfigurationsdatei funktioniert. Ich benutze Pip 1.5.4 auf Ubuntu 14.04
Was letztendlich für mich funktioniert hat, ist, zuerst das Zertifikat auf dem System zu installieren (für mich auf Ubuntu wäre das).
Das vorherige Update aktualisiert die Bundle-Datei automatisch (
/etc/ssl/certs/ca-certificates.crt
wenn Sie unten prüfen , sollte jetzt dasselbe Zertifikat wie in angezeigt werdenmy_cert.crt
).Verwenden Sie jetzt diesen Pfad in
PIP_CERT
. Und füge es zu meinem hinzu.bashrc
:HAFTUNGSAUSSCHLUSS : Ich habe diese Antwort bereits in SO gepostet (die gleiche Antwort wie im obigen "eventuell duplizierten Link"), aber am Anfang habe ich die andere (eventuell duplizierte Antwort) nicht gefunden ... also, wenn jemand wie ich zuerst hier ankommt, dann könnte das helfen.
Vielleicht verstoße ich gegen eine Regel, um dieselbe Antwort zweimal zu posten, eine in SO und die andere in Superuser. Wenn ja, tut mir das leid.
quelle
Dies funktionierte für mich, ohne dass ich wissen musste, wo sich die Konfigurationsdatei befindet:
Ich glaube, Sie brauchen pip Version 10+, die Sie mit finden können:
Die Ausgabe des Befehls config set gibt dann den Namen der Konfigurationsdatei aus
quelle