Mencoba mencari tahu apakah ada cara yang bisa saya hindari menggunakan flag --cert ke pip ketika saya menginstal paket di tempat kerja. Ada beberapa masalah dengan proxy yang hanya memungkinkan saya untuk mengunduh paket yang saya butuhkan ketika saya memberikan flag itu, meskipun menambahkan mycert.crt
file ke /usr/local/share/ca-certificates
dan berjalan sudo update-ca-certificates
.
Contoh dari pesan yang saya lihat adalah:
$ 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
Ini dapat diselesaikan dengan menggunakan:
pip install --cert=/usr/local/share/ca-certificates/mycert.crt
Namun, saya lebih suka tidak harus melakukannya (karena saya yakin aplikasi lain menabrak masalah ini).
Saya menjalankan Linux Mint 15 (meskipun saya sebelumnya memiliki masalah yang sangat mirip pada Ubuntu 12.04), pip versi 1.4.1.
linux
ubuntu
linux-mint
ssl
certificate
Ian Lee
sumber
sumber
Jawaban:
Anda dapat mengaturnya melalui file konfigurasi pip, yang ada di dalam
$HOME/.pip/pip.conf
atau%APPDATA%\pip\pip.ini
di Windows:File ini memungkinkan Anda untuk mengatur pada dasarnya semua flag yang digunakan oleh pip. Dokumentasi lengkap ada di https://pip.pypa.io/en/latest/user_guide/#configuration
sumber
Bagi saya, tidak ada penyelesaian file konfigurasi yang berfungsi. Saya menggunakan pip 1.5.4 di Ubuntu 14.04
Apa yang akhirnya berhasil bagi saya adalah menginstal sertifikat pada sistem terlebih dahulu (bagi saya di ubuntu ini akan menjadi)
Yang sebelumnya secara otomatis memperbarui file bundel (memeriksa di bagian bawah
/etc/ssl/certs/ca-certificates.crt
Anda sekarang akan melihat sertifikat yang sama seperti padamy_cert.crt
)Sekarang gunakan jalur itu di
PIP_CERT
. Dan tambahkan ke saya.bashrc
:PENOLAKAN : Saya sudah memposting jawaban ini dalam SO (jawaban yang sama seperti pada 'akhirnya tautan duplikat di atas', tetapi pada awalnya saya tidak menemukan yang lain (jawaban akhirnya digandakan) ... jadi jika seseorang seperti saya tiba di sini dulu, maka ini mungkin bisa membantu.
Mungkin saya melanggar beberapa jenis aturan untuk mengirim jawaban yang sama dua kali, satu di SO dan yang lain di superuser. Kalau begitu, maaf soal itu.
sumber
Ini berfungsi untuk saya tanpa perlu tahu di mana file config tinggal:
Saya percaya Anda membutuhkan pip versi 10+, yang dapat Anda temukan dengan:
Output dari perintah set konfigurasi kemudian menampilkan nama file konfigurasi untuk kenyamanan Anda
sumber