python 清华源_python企业私有pypi仓库:devpi

python有非常多的第三方包,这些包提供了非常丰富的功能。可以通过pip install来安装需要的包。而对于一个多pythoner的团队,内部私有pypi仓库是非常重要的。内部仓库有两大优势:

一,在企业内部,多人团队协同开发,特别是近几年微服务模式的流行,为了减少公有功能(如统一账号认证,通知消息发送,员工信息获取等等)的重复开发,建议大家封装好内部python包然后供其他成员使用。

二,如今容器化已经比较普遍,使用容器部署python应用时,必不可少的一步就是安装依赖包,一般企业都会在生产环境禁止服务器直接访问外部网络,这就导致无法通过官方源来安装python包。即使没有禁止访问,也会因为某些原因导致使用官方源安装包时速度非常慢。

本人通过对比了目前比较常见的pypi私有仓库系统,最终选择了devpi(https://github.com/devpi/devpi)。选择devpi有两点考虑:

1.devpi支持使用豆瓣、清华等镜像源作为下载源,当安装的包在devpi-server不存在时,devpi会先从指定的下载源下载并缓存以此保证后续的下载速度。

2.devpi支持缓存,只要安装一次,这个包就会缓存在devpi服务端,以后安装python包时将直接从devpi服务端下载,这点在企业生产环境将非常高效。只需要允许devpi服务器访问豆瓣或者清华源地址即可为生产环境服务器提供稳定高速的pypi包下载服务。

f6076cbafa0c9328da5a767ac56c71d8.png

使用私有pypi仓库安装包

devpi分为三个部分:

devpi-server: 用于索引以及基于用户或团队的索引,这些索引可以从pypi.org站点或者豆瓣、清华源继承

devpi-web: devpi-server的插件,提供web和搜索界面

devpi-client: 命令行工具,用于创建用户,使用索引,上传包等功能

安装过程本文就不说明了,官方文档非常详细,看文档就好了。这里说两点比较实用的功能

1.设置镜像仓库的镜像源,如豆瓣源、清华源

使用客户端连接到devpi-server后执行命令devpi index root/pypi mirror_url="https://pypi.doubanio.com/simple/"devpi index root/pypi mirror_url="https://pypi.tuna.tsinghua.edu.cn/simple/"

2.修改web搜索界面

devpi的默认web页面比较简陋,可以通过修改site-packages/devpi_web/templates/root.pt来做适当的定制,如企业名称、企业logo等

eb932a7800b5e36a7c6c8f75fcfbed8c.png

默认web界面

0f3a405b866ee16fae72d48efd843a0a.png

简单定制后的web界面

如果有你有任何疑问欢迎给我留言,当然你也可以直接给项目提issue (https://github.com/devpi/devpi/issues)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值