2008-09-16 18 views
8

ローカルCPANミラーを設定して維持するには何が必要ですか?どのスクリプトとベストプラクティスを知っておく必要がありますか?ローカルCPANミラーを設定するにはどうすればよいですか?

+0

ここでは、すべてのコマンドを使った、完全で簡単なステップバイステップの記事です。ちょうどコピー&ペーストするだけです。あなた自身のCPANで独自のPerlをインストールしてください(http:// perl- node-interface.blogspot.com/2012/02/install-your-own-perl-with-your-own.html) –

答えて

3
+1

または、特定のバージョンに関連付けられているためにリンクが消えた場合は、CPAN::Miniを試してみてください。時代を超越するリンクについては、How to link to CPAN modules in answersを参照してください。 :) –

+0

また、search.cpan.orgの使用をやめ、metacpan(見た目が良く、オープンソース!)を使用してください:https://metacpan.org/pod/CPAN::Mini –

25

CPAN::Miniが移動するための方法です。あなたが欲しい場合は

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

:このようなURL:ローカルでCPANをミラーリングしたら、「ファイル」を使用してローカルディレクトリにCPAN.pmやCPANPLUSであなたのミラーのURLを設定することをお勧めしますミラーには、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)は、ミラーリングを使用してローカルのミラーからメタデータを取得し、オンラインでクエリを実行することはありません。 > 1.1000 Thu Nov 11 23:56:46 PST 2010 - minicpanとDarkPAN(jonallen、xdg、tokuhirom)をサポートする--mirror-onlyを追加 – spazm

5

CPAN :: Miniは問題ありません。デフォルトでは、最新バージョンのディストリビューションのみを保持します。

ローカルのcpanミラーへのWebインターフェイスを提供するCPAN :: Mini :: Webserverをインストールすることもできます。これはオフラインでもperlで作業したい場合に非常に便利です。

2

CPANミラーを実行するための最も可能性の高いシナリオは、50台のマシンのネットワークが、ネットワークを50回叩くのではなく、ローカルからすべて更新できるようにすることです。

CPANを従来の方法で使用すると、サーバーのネットワークを最新の状態に保つことが難しいと私は主張します。

私はRedHatマシンのネットワークを実行しています。私は、プロダクションで使用するすべてのCPANモジュールをRPMにパッケージ化し(ほとんどRPM :: Specfileのcpanflute2ツールを使用して)、それを展開して、CPAN自体から得られない適切な依存関係のトラッキングを確実にします。

+0

そしてRedHatのベンダーperlを使用しないことを願っていますか? Perl開発者が頭を振っている問題のある「修正」でいっぱいです。 RedHatユーザーからバグレポートを受け取った場合、最初の手順は、常にRedHatではなく、perlでの問題であることを確認することです。ほとんどの場合* RedHatです。 – moritz

8

その他の回答に加えて、LeonのCPAN::Mini::Webserverをチェックしてください。CPAN SearchのローカルCPANコピーがあります。

もっと気に入ったことをしたいのであれば、私の"MyCPAN"の話を見てください。たとえば、自分のプライベートモジュールをプライベートCPANに注入するには、CPAN::Mini::Injectと入力します。

関連する問題