web-dev-qa-db-ja.com

仮想環境でプロキシを使用したpipインストール

私はインターネットへの接続にプロキシサーバーを使用する会社のラップトップでUbuntu VMを使用しています。調査の結果、プロキシでpip installを使用してモジュールをインストールする方法を見つけました。たとえば、このコマンドを使用して、virtualenvモジュールをインストールできます。

Sudo pip install --proxy=http://user:pass@<proxy_address>:<portnumber> virtualenv

ただし、仮想環境フォルダーを作成した後、それをアクティブ化し、次のpipコマンドを使用してモジュールをインストールします。

pip install --proxy=http://user:pass@<proxy_address>:<portnumber> pyperclip

このエラーが発生します:

 Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 407 Proxy Authentication Required',))': /simple/pyperclip/

Sudoを使用すると、pipはモジュールをダウンロードしてインストールできますが、仮想環境ではなくシステムグローバルパッケージにあります。私のUbuntuとそのプロキシ設定の権限の問題のようです。

Virtualenvにモジュールをローカルにインストールできるように、この問題にどのように取り組むことができますか?

ありがとう

6
ywiyogo

その間、私は解決策を知っています。 pipには、HTTP_PROXYの代わりに大文字の環境変数HTTPS_PROXYhttp_proxyが必要です。したがって、「〜/ .bashrc」の最後に以下のテキストパターンを追加します

HTTP_PROXY=http://username:pass@proxyaddress:port
export HTTP_PROXY
HTTPS_PROXY=http://username:pass@proxyaddress:port
export HTTPS_PROXY

次に、source ~/.bashrcを実行します。これで、プロキシログインを使用してUbuntu pythonにpipを使用してすべてのVMパッケージをインストールできます。

5
ywiyogo

Virtualenvをアクティブ化せず、virtualenvpipへのフルパスを指定してpip install --proxy ...コマンドを実行します。

C:\Users\name\myvenv\Scripts\pip install --proxy=http://user:pass@<proxy_address>:<portnumber> virtualenv

1
Srian