在一台没有 Root 权限的机器上,部署使用 Python 编写的服务,似乎只有 virtualenv 一条路可以选了。 当然我见过一些同事会在自己的家目录编译一个,然后设置一下 $PATH ,但是从通用性和部署的便利性上考虑,还是使用 virtualenv 更划算一些。 使用 virtualenv 创建完环境之后,下一步就是要安装各种软件包了。 pip 可以很方便地(也不是全都很方便,比如MySQL-python)安装各种包,唯一的缺点就是

经过搜索,发现 豆瓣 提供了 pip 的源, 可以让安装过程既酸爽,又过瘾:

pip install -i http://pypi.douban.com/simple eventlet

有了豆瓣提供的源,软件下载的速度快到让你不好意思,从此再也不用担心OP执行你的上线单失败了。

原本以为,搭建环境的事情到此为止了,没想到我毕竟还是 too young,上线单又出现了问题。

这次压根不是慢不慢的问题了,变成了有没有外网权限的问题了。公司机房的机器,有着严(che)格(dan)的权限管理,被管理的权限中,自然也包括了访问外网的权限。而为没一台机器都开通外网权限,显然是不可能的:一来 OP 所在的部门不答应;二来申请权限后就用一次,也会浪费了申请所花费的时间。

还好,pip 还支持代理,我只需要找一台有外网权限的开发机,然后搭建一个代理服务器,然后在pip中使用这个代理就可以了。造轮子是不(zao)划(bu)算(chu)的(lai),所以我找到了twisted提供的例子,分分钟搭建起一个代理服务。

最后一步,为pip使用代理:

pip install -i http://pypi.douban.com/simple  --proxy http://10.11.12.13:8008 eventlet

使用 PYTHON 为 PIP 搭建 HTTP 代理的更多相关文章

  1. Python----Anaconda + PyCharm + Python 开发环境搭建(使用pip,安装selenium,使用IDLE)

    1.Python开发中会用到的工具下载地址 FireBug插件安装地址:https://addons.mozilla.org/en-US/firefox/addon/firebug/ FirePath ...

  2. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  3. selenium + python自动化测试环境搭建

    selenium的在python平台的搭建: 搭建平台windows 准备工具如下: --------------------------------------------------------- ...

  4. Python - 利用pip管理包

    下载与安装setuptools和pip https://pypi.python.org/packages/source/s/setuptoolshttps://pypi.python.org/pypi ...

  5. selenium + python 自动化测试环境搭建

    selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...

  6. python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客

    python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客 undefined Python多线程抓取代理服务器 | Linux运维笔记 undefined java如 ...

  7. ubuntu下python flask环境搭建

    ubuntu下python flask环境搭建 1. 安装pip sudo apt-get install python-dev pyhton-pip 2. 安装virtualenv sudo apt ...

  8. python服务器环境搭建(2)——安装相关软件

    在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...

  9. [笔记]我的Linux入门之路 - 05.Eclipse的Python开发环境搭建与Numpy、Scipy库安装

    一.Python环境 直接终端查询下python安装没:python --version Python 2.7.12 Ubuntu竟然已经装了Python2.7,那就好说了.不然自己装和装jdk差不多 ...

随机推荐

  1. python platform模块

    该模块用来访问平台相关属性. 常见属性和方法 系统名称 platform.system() 返回系统/操作系统名称,例如“Linux”,“Windows” >>> platform. ...

  2. ABAP抓取异常的方法:try,endtry

    部分转自:http://www.cnblogs.com/jiangzhengjun/p/4292428.html +4.Funcion函数异常处理 说明: 异常处理机制可以有效避免 dump发生, : ...

  3. Oracle业务用户密码过期问题的解决

    实验环境:Oracle 11.2.0.4 如果DBA不知道业务用户密码,当业务密码过期,应用要求DBA帮忙重设为原来的密码. 1.查询业务用户密码 从user$查到hash加密过的值: select ...

  4. 怎么在jquery里清空文本框的内容

    $("input[name='test']").val("").focus(); // 将name=test的文本框清空并获得焦点,以便重新输入

  5. unp第七章补充之socket tcp 产生 rst响应的情况

    socket tcp 产生 rst响应的情况(属于硬错误) 1.     syn发送到服务器主机,但是目的端口并未运行.则产生一个ECONRFUSED错误.客户端立即返回.比如telnet 192.1 ...

  6. echarts2简单笔记

    1.代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  7. swoole线程和进程

    pstree -a | grep php |   |       `-php server.php   主进程      |   |           |-php server.php   管理线程 ...

  8. vs计算代码行数

    1.用vs打开程序 2.编辑——查找——在文件中查找 3.查找内容^b*[^:b#/]+.*$   应用正则表达式,在整个解决方案中,文件类型空 4.查找全部,仔细盯着右下角数字,查找完毕后会自动消失 ...

  9. Atcoder Tenka1 Programmer Contest 2019 D Three Colors

    题意: 有\(n\)个石头,每个石头有权值,可以给它们染'R', 'G', 'B'三种颜色,如下定义一种染色方案为合法方案: 所有石头都染上了一种颜色 令\(R, G, B\)为染了'R', 染了'G ...

  10. 去除input的默认样式

    input, button, select, textarea { outline: none; -webkit-appearance: none; border-radius: 0; } outli ...