R - 设置我自己的CRAN存储库

时间:2012-08-13 01:34:50

标签: r package cran

我想设置一个本地CRAN存储库。我想在这个存储库中只放一个包(让我们称之为MyPackage)。我这样做的原因是我想与我公司的人分享这个包。顺便说一下 - 我们都使用Ubuntu Linux。 我已经这样做了:

  • 我有一个Web服务器(BOA Web服务器),并创建了一个名为R. Made folder src和contrib。
  • 的Web文件夹。
  • 在contrib文件夹中,我将我的包MyPackage(tar.gz)加上PACKAGES文件。

然而,当我这样做时:

install.packages("MyPackage", repos = "127.0.0.1/R" ) 

它不起作用;

Warning: unable to access index for repository [ ]
Warning message:
In getDependencies(pkgs, dependencies, available, lib) :
  package ‘MyPackage’ is not available (for R version 2.13.1)

你们可以指导我一下,告诉我什么是正确的文件夹结构? 感谢。

3 个答案:

答案 0 :(得分:13)

请参阅R Admin手册的“Section 6.6 Setting up a package repository”。

编辑大约三年+ :我们现在拥有自动创建存储库的drat package,并且可以巧妙地使用GitHub为您托管它。

答案 1 :(得分:5)

您可能只需要正确指定URL; http://127.0.0.1/R

另外,请确保您可以在浏览器中访问该网址。

答案 2 :(得分:0)

miniCRAN对我有好处。使用miniCRAN创建存储库几乎没有什么好处:

  • 安全性:许多R用户习惯于从CRAN或其某个镜像站点随意下载和安装新的R包。
  • 更容易离线安装:要将软件包安装到脱机服务器,还需要下载所有软件包依赖项,使用miniCRAN可以更轻松地以正确的格式获取所有依赖项。
  • 改进的版本管理:在多用户环境中,有充分的理由避免在服务器上不受限制地安装多个软件包版本。
  • 使用其他R套餐索引:您可能希望从CRAN以外的公共存储库中提供软件包,例如: BioConductor,r-forge,OmegaHat等
  • 准备自己的R repo:您可能希望将自定义内部软件包添加到您的存储库。

见介绍:

  1. Using miniCRAN to create a local CRAN repository
  2. Create a local package repository using miniCRAN