2008-09-16 64 views
8

我需要什么来设置和维护本地CPAN镜像?我应该知道哪些脚本和最佳实践?如何设置本地CPAN镜像?

+0

这是一个完整的,简单的,一步一步,文章的所有命令...只是复制和粘贴,它应该工作非常:) [用自己的CPAN安装自己的Perl(HTTP:// perl- node-interface.blogspot.com/2012/02/install-your-own-perl-with-your-own.html) – 2012-02-18 01:51:08

回答

3

尝试CPAN::Mini

+1

或者,如果该链接消失,因为它绑在particulr版本,尝试CPAN::Mini。有关永恒链接的讨论,请参阅How to link to CPAN modules in answers。 :) – 2008-09-20 21:21:30

+0

或停止使用search.cpan.org并使用metacpan(更好看,开源!):https://metacpan.org/pod/CPAN::Mini – 2015-05-28 21:23:14

25

CPAN::Mini是要走的路。一旦你镜像CPAN本地,你会想用一个“文件:”在CPAN.pm你的镜子URL或CPANPLUS设置到本地目录的网址是这样的:

file:///path/to/my/cpan/mirror 

如果您希望镜像以获得CPAN发行版的副本,则可以使用CPAN::Mini::Devel

更新:

在另一个答案给出的"What do I need to mirror CPAN?"常见问题是镜像CPAN的所有,通常都是提供另一个公共镜。这包括过时的旧版发行版。 CPAN :: Mini只是镜像最新版本。这个要小得多,对于大多数用户来说,通常是人们用于本地或断开(笔记本电脑)访问CPAN的内容。

+0

自1.1开始,http://search.cpan.org/perldoc?App::cpanminus App :: cpanminus(cpanm)支持--mirror-only从您的本地镜像中提取元数据,而无需在线查询。 > 1.1000 Thu Nov 11 23:56:46 PST 2010 - 新增--mirror-only支持minicpan和DarkPAN(jonallen,xdg,tokuhirom) – spazm 2011-02-23 21:05:25

5

CPAN :: Mini很好。默认情况下,它只保留最新版本的发行版,而不是像CPAN那样的每个版本。

您还可以安装CPAN ::小:: Web服务器,它为您提供了一个网络接口到本地CPAN镜像 - 非常方便的,如果你下线还是想用Perl工作。

2

用于运行CPAN镜,最可能的情况是让你的50台机器的网络都可以从它在本地更新,而不是接触网络的50倍。

我要说的是,在传统的方式使用CPAN是保持服务器的网络最新的一个好办法。

我运行RedHat机器的网络。我将打算用于生产的所有CPAN模块打包到RPM中(大多数使用RPM :: Specfile中的cpanflute2工具),并以这种方式部署它们,从而确保正确的依赖关系跟踪,您从CPAN本身无法以任何理智的方式获得真正的依赖关系跟踪。

8

除了其他答案,请查看Leon的CPAN::Mini::Webserver,它为您提供CPAN Search接口到您的本地CPAN副本。

如果你想要做更多花哨的东西,看到我"MyCPAN"谈话。例如,您可以使用CPAN::Mini::Inject将您自己的私人模块注入到您的私人CPAN中。