ubuntu 在虚拟环境中使用代理进行pip安装

a2mppw5e  于 12个月前  发布在  其他
关注(0)|答案(4)|浏览(152)

我在我公司的笔记本电脑上使用Ubuntu虚拟机,它使用代理服务器连接到互联网。经过一些研究,我发现了如何使用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中本地安装模块?
谢谢

68bkxrlz

68bkxrlz1#

同时,我知道解决方案。pip需要大写的环境变量HTTP_PROXYHTTPS_PROXY,而不是http_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 VM中安装所有使用pip的python包。

4dbbbstv

4dbbbstv2#

不要激活virtualenv并使用virtualenv pip的完整路径运行pip install --proxy ...命令,即
C:\Users\name\myvenv\Scripts\pip install --proxy=http://user:pass@<proxy_address>:<portnumber> virtualenv

dgsult0t

dgsult0t3#

您可能需要退出virtualenv并脱机安装软件包。使用以下命令下载软件包:

pip download -d <path/to/downloads/> {package_name | -r requirements.txt}

字符串
然后输入你的virtualenv,安装软件包:

pip install {package_name| -r requiements.txt} --no-index --find-links <path/to/downloads/>

egdjgwm8

egdjgwm84#

不要激活virtualenv并运行pip instl --proxy.命令,其中包含virtualenv pip的完整路径,即
C:\Users\name\myvenv\pip install --proxy=http://user:pass@<proxy_address>:virtualenv

相关问题