制作pip源(按需,非镜像方式)
全部下载所有的镜像文件有时候确实是比较耗时的,那么也可以仅同步所需的Pypi包。
下面我们用一个叫做 pip2pi 的工具仅同步所需的Pypi包
安装pip2pi工具
$ pip install pip2pi
或
$ git clone https://github.com/wolever/pip2pi
$ cd pip2pi
$ python setup.py install
创建存放软件包的仓库
$ sudo mkdir /var/spool/pypi-mirror
下载软件包
单个下载,比如:
$ pip2tgz /var/spool/pypi-mirror/ routes==1.12.3
批量下载,比如:
$ pip2tgz /var/spool/pypi-mirror/ -r requirements.txt
requirements.txt文件是一个待下载软件包列表,比如openstack需求的包列表。
建立索引:
$ dir2pi /var/spool/pypi-mirror/
更新版本
若软件需求有更新,可以如下更新索引:
$ pip2acmeco uliweb=0.2.6
$ pip2acmeco -r list/requirements.txt
发布
最后,将库地址配置给http服务就行了,方法同apt的类似,也可以采用自己的服务软件,比如nginx配置,这里介绍nginx的配置方法。
给Nginx服务器添加虚拟主机配置:
server {
listen 80;
server_name [hostname];
root /var/spool/pypi-mirror;
location /{
autoindex on;
autoindex_exact_size off; #显示文件的大小
autoindex_localtime on; #显示文件时间
#limit_rate_after 5m; #5分钟后下载速度限制为200k
limit_rate 200k;
}
access_log logs/pypi.hostname.com.access.log main;
}
当然也可以像apt源的部署方法一样,做一个软链接给apache2,或者配置apache
$ sudo ln -s /var/spool/pypi-mirror /var/www/html/pypi
完。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 《HelloGitHub》第 108 期
· Windows桌面应用自动更新解决方案SharpUpdater5发布
· 我的家庭实验室服务器集群硬件清单
· Supergateway:MCP服务器的远程调试与集成工具
· C# 13 中的新增功能实操