搭建本地pypi源方法 – 仅同步openstack依赖的的pypi软件包

前端之家收集整理的这篇文章主要介绍了搭建本地pypi源方法 – 仅同步openstack依赖的的pypi软件包前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

转载自:点击打开链接

使用devstack搭建openstack开发环境,一个很头疼的问题就是devstack通过pip安装依赖的一些软件包,由于网络环境的差异,导致很多无法连接外网或者连接外网受限的实验室环境非常崩溃,前面一篇文章介绍过《基于CentOS的pip本地源搭建方法》,文中的方法是采用bandsnatch工具与官方的pypi源同步,此方法对于openstack开发者来说,有以下缺点:
(1)bandsnatch仅支持全量同步,不支持指定软件包同步,同步量巨大,非常耗时,而且openstack仅仅依赖少量的软件包;
(2)bandsnatch仅支持与https的源进行同步,不支持http的源同步,只能与官方源同步,不能与国内速度快的源,比如豆瓣的源同步;
这里介绍一种仅同步openstack依赖的pypi软件包的方法,而且但支持与https的源同步,也支持与http的源同步。

具体步骤如下:
(1)建立存放pypi软件包的目录,比如在根下创建目录/pypi

  1. # mkdir/pypi
(2)安装pip2pi软件
sudo pip install pip2pi
或者编译安装
git clone https://github.com/wolever/pip2pi
  • cd pip2pi
  • sudo python setup.py install
  • (3)配置要同步的pypi源,比如以与豆瓣的pypi源同步为例
    vim~.pip.conf
  • [global]
  • index-url=http/pypi.douban/simple
  • (4)单个软件包同步
    pip2tgz/pypi name==version

  • 比如: pip2tgz/pypi pbr=0.521
  • (5)批量同步
    -r./requirements.txt
  • 注: requirements.txt里面写入需要同步的pypi软件包
  • 下面来看下nova模块的requirements.txt文件里面的内容,执行批量同步后,会依次将以下软件同步到/pypi目录下,自己也可以按照如下格式编写适合自己的requirements.txt:
    pbr>=0.6,<1.0
  • sqlAlchemy.7.8<.9.99
  • amqplib.1
  • anyjson.3.3
  • argparse
  • boto=2.12.0!.13.0
  • eventlet.0
  • Jinja2
  • kombu.4.8
  • lxml.3
  • Routes=1.3
  • WebOb.2.3
  • greenlet.2
  • PasteDeploy.5.0
  • Paste
  • sqlalchemy-migrate.4
  • netaddr.6
  • suds.4
  • paramiko.0
  • pyasn1
  • Babel.3
  • iso8601.1.9
  • jsonschema<3.0
  • python-cinderclient.6
  • python-neutronclient<3
  • python-glanceclient-keystoneclient.0
  • six.2
  • stevedore.14
  • websockify<0.6
  • wsgiref.2
  • oslo.config.0
  • oslo.rootwrap
  • pycadf.1
  • oslo.messaging.0a9
  • (6)同步完成后要建立索引
    dir2pi/pypi ###对pypi目录下的所有软件包建立索引
    或者对指定的软件包更新其索引
    pip2acmeco name
  • pip2acmeco-r requirements.txt
  • (7)配置web访问界面,以apache为例
    ln-s/var/www/html重启apache即可。

    (8)配置使用新搭建的pypi源
  • vim.conf
  • /your_host_ip/pypi/simple

  • 注: 可能对不同的os发行版或版本,会出现某些特殊的问题,后续会专门写篇文章总结碰到的问题。
    ---------------------------------------------------
    微博:@ Marshal-Liu
    Email: ustcdylan@gmail.com
    欢迎交流!

    --------------------------------------------------- 原文链接:https://www.f2er.com/javaschema/283477.html

    猜你在找的设计模式相关文章