成功使用devpi搭建PyPI缓存源,建立内网python安装包服务器(通过代理上网)
创始人
2024-11-14 19:34:30
0次

前言

缓存源和镜像源的区别:

缓存源:初始状态为空。下载请求的软件包没有缓存,则回源到设置的上游镜像源,然后该软件包会被缓存。如果请求的软件包已经被缓存,则直接从本地缓存返回用户。

下载速度:第一次速度 = 通过外网从上游镜像源下载的速度;之后的速度 = 内网带宽速度。

磁盘空间:少。初始时只保存了软件包索引,随着使用过程,软件包被缓存,磁盘占用逐渐变大。

镜像源:初始状态含有所有软件包,并且定时与上游镜像源同步。当下载请求到来时直接返回本地文件。

下载速度:内网带宽速度,即使公网断了也能正常下载。

磁盘空间:极大。完整的镜像都是 10TB+ 级别的,当然我们可以选择镜像一个子集。

通过上面的对比,可以发现这两种方案各有优劣。缓存源类似 CDN 缓存,镜像源则相当于全部复制。

PyPI:使用 devpi (+ Nginx) 搭建缓存源

PyPI 选择搭建缓存源的原因是 Pypi 的完整库体积过大(目前已经有 16TB,详见 https://pypi.org/stats/),全部镜像一遍成本过高,且平时根本用不到所有软件包,所以选择搭建缓存源。

使用 devpi 搭建 PyPI 缓存源

快速配置

devpi 本身是一个 Python 软件包,可通过 pip 下载:pip install devpi

安装好后,首先需要初始化。使用 devpi-init --serverdir=[PATH] 进行初始化,其中 [PATH] 代表程序的工作目录,配置文件和缓存都储存在这个目录下,因此该目录的储存空间一定要充足。如果不指定这个参数,则工作目录默认在用户目录下:~/.devpi/server

(venv) [devpi@localhost ~]$ devpi-init --serverdir=/home/devpi/data INFO  NOCTX Loading node info from /home/devpi/data/.nodeinfo INFO  NOCTX generated uuid: 79ec3310594c4356a948c6da4a2ad6fb INFO  NOCTX wrote nodeinfo to: /home/devpi/data/.nodeinfo INFO  NOCTX DB: Creating schema INFO  [Wtx-1] setting password for user 'root' INFO  [Wtx-1] created user 'root' INFO  [Wtx-1] created root user INFO  [Wtx-1] created root/pypi index INFO  [Wtx-1] fswriter0: committed at 0 

初始化后,就可以启动服务器了。使用 devpi-server --host=[HOST] --port=[PORT] --serverdir=[PATH] 启动服务器,其中 [HOST] 为监听的地址,填写 127.0.0.1 则只有本机能访问,填写 0.0.0.0 则任何主机都能访问,[PORT] 为监听的端口,[PATH] 为刚才初始化选择的工作目录。

cat startapp.sh devpi-server --host=0.0.0.0 --port=8081 --serverdir=/home/devpi/data  (venv) [devpi@localhost ~]$ sh startapp.sh   2024-07-18 22:32:20,285 INFO  NOCTX Loading node info from /home/devpi/data/.nodeinfo 2024-07-18 22:32:20,286 INFO  NOCTX wrote nodeinfo to: /home/devpi/data/.nodeinfo 2024-07-18 22:32:20,304 INFO  NOCTX running with role 'standalone' 2024-07-18 22:32:20,314 WARNI NOCTX No secret file provided, creating a new random secret. Login tokens issued before are invalid. Use --secretfile option to provide a persistent secret. You can create a proper secret with the devpi-gen-secret command. 2024-07-18 22:32:21,864 INFO  NOCTX Found plugin devpi-web-4.2.2. 2024-07-18 22:32:21,983 INFO  NOCTX Using /home/devpi/data/.indices for Whoosh index files. 2024-07-18 22:32:22,037 INFO  [ASYN

相关内容

热门资讯

实测交流透视挂!宝玛大厅ai智... 实测交流透视挂!宝玛大厅ai智能透视挂教程,宝玛大厅破解软件经验(本来有挂辅助)1、每一步都需要思考...
总算了解辅助器!朱雀吴江三缺一... 总算了解辅助器!朱雀吴江三缺一ai智能透视辅助挂技巧,朱雀吴江三缺一好像是有挂(有辅助挂细节)朱雀吴...
今日公布透视!九五至尊大厅ai... 今日公布透视!九五至尊大厅ai智能透视插件,九五至尊大厅有没有透视挂窍门(切实有挂技术)1、在九五至...
玩家必看科普开挂!聚闲麻将ai... 玩家必看科普开挂!聚闲麻将ai智能透视辅助挂软件,聚闲麻将总是真的有挂(有辅助挂方式)聚闲麻将能透视...
据报道开挂!旅游娱乐ai智能开... 据报道开挂!旅游娱乐ai智能开挂工具,旅游娱乐辅助工具演示(一直有挂教学)1、全新机制【旅游娱乐ai...
一分钟揭秘开挂!决胜朋来麻将a... 一分钟揭秘开挂!决胜朋来麻将ai智能透视辅助挂教程,决胜朋来麻将真是真的是有挂(有辅助挂总结)1、首...
如何分辨真伪透视!红牛ai智能... 如何分辨真伪透视!红牛ai智能透视攻略,红牛是不是有挂经验(真是有挂技术)1、操作简单,无需红牛手机...
2分钟细说辅助器!江湖大庆麻将... 2分钟细说辅助器!江湖大庆麻将ai智能透视辅助挂攻略,江湖大庆麻将竟然是真的有挂(有辅助挂头条)1、...
总算清楚透视挂!老夫子厅ai智... 总算清楚透视挂!老夫子厅ai智能透视挂技巧,老夫子厅怎么开挂课程(好像发现有挂)老夫子厅破解侠是真的...
解密关于辅助!菜鸟麻将ai智能... 解密关于辅助!菜鸟麻将ai智能透视辅助挂脚本,菜鸟麻将总是存在有挂(有辅助挂存在)1、用户打开应用后...