我很难在服务器上创建一个阻止所有internet访问的virtualenv。以前有人成功过吗?我搜索了一下,但没有发现任何有用的东西。我可以来回传输数据,但我不知道需要下载哪些包,以及安装时需要哪些选项。
如果你想知道我是怎么创造出来的,这里有个回溯:
netops@netops1 /spare/local/latency $virtualenv -p /usr/bin/python2.6 latency
Running virtualenv with interpreter /usr/bin/python2.6
New python executable in latency/bin/python2.6
Also creating executable in latency/bin/python
Installing setuptools.....................
Complete output from command /spare/local/latency/latency/bin/python2.6 -c "#!python
\"\"\"Bootstra...sys.argv[1:])
" --always-copy -U setuptools:
Downloading http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
Traceback (most recent call last):
File "<string>", line 279, in <module>
File "<string>", line 211, in main
File "<string>", line 159, in download_setuptools
File "/usr/lib64/python2.6/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib64/python2.6/urllib2.py", line 391, in open
response = self._open(req, data)
File "/usr/lib64/python2.6/urllib2.py", line 409, in _open
'_open', req)
File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib64/python2.6/urllib2.py", line 1181, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib64/python2.6/urllib2.py", line 1156, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 110] Connection timed out>
谢谢你的帮助。
现在将内容从
.mypypi
传输到服务器。假设您将其复制到了您的$HOME
中,然后执行以下操作:这也适用于requirements.txt文件。
如果您将virtualenv更新到>;=1.10版本,则它将永远无法连接到internet,而不考虑任何标志(请参阅“更改和新闻”部分here)
internet连接用于在虚拟环境中安装
setuptools
和pip
包。旧版本的virtualenv会尝试下载这两个包,而新版本会随附,并在必要时将其解包。由于您的virtualenv版本(1.7.2)低于1.10,您可以使用
--never-download
标志以避免连接到internet。稍后,您可以安装(脱机)所需的内容。Here(部分--extra search dir选项)解释了如何在没有internet连接的情况下引导setuptools和pip。基本上,您需要获取这些包的
.egg
文件并将它们放在本地某个地方,然后您需要执行以下操作:相关问题 更多 >
编程相关推荐