我正在做一些devops工作,我经常不得不打开一台机器并从不同的位置安装一堆Pear包。
这些不同的地点go offline有点频繁(可能一周几次)。无论如何,我的理智太频繁了。
拥有某种缓存代理服务器是很方便的,我主持并运行自己,我会去每个Pear包。如果它没有包,它会熄灭并取出它。这将减少许多其他服务器的负载。如果上游永远失效,我还能得到一定程度的保证,我仍然可以访问包裹。
此类软件是否存在?梨?我甚至无法弄清楚Pyrus解决了什么问题,但它似乎并没有解决我的问题。
这种包代理/缓存类似于Nexus在Java / Maven-land中的功能。
答案 0 :(得分:2)
Pyrus打算成为PHP5.3 +的PEAR安装程序。一些较新的PEAR2包需要它。但它不是缓存的解决方案。
我认为最简单的方法是从远程服务器下载软件包及其依赖项,然后安装软件包。以下是使用Benchmark
包的示例:
wget 'http://your.cache.server/package/Benchmark-1.2.9.tgz'
tar xf Benchmark-1.2.9.tgz
cp package.xml Benchmark-1.2.9
sudo pear install package.xml
另一种方法是使用缓存HTTP代理服务器,因为PEAR使用HTTP进行下载。鱿鱼可能已经满足你的需求。
您也可以使用pirum。它是一个PEAR通道服务器软件,这意味着您可以设置自己的PEAR存储库。拥有它,您可以自己模拟远程通道服务器(经常出现故障):
答案 1 :(得分:1)
Pyrus是PHP 5.3 +的重写PEAR安装程序。
在https://github.com/c9s/MiniPear
有一个名为“MiniPEAR”的PEAR频道镜像工具简单地下载一个软件包并没有给你所有的依赖,所以它不是一个真正的解决方案。