如何在Linux上运行的DeployR服务器上安装R包(托管在Amazon EC2上)?
我在Amazon EC2实例上托管的Redhat Linux上成功安装了DeployR。我可以成功进入DeployR登陆页面并选中诊断选项卡,它说DeployR正在运行,并且显示正常。如何在Linux上运行的DeployR服务器上安装R包(托管在Amazon EC2上)?
我测试过一个简易R脚本并运行罚款DeployR,但现在我需要安装RJDBC包:install.packages(“RJDBC”,DEP = TRUE)
的文档不清晰的包管理:https://deployr.revolutionanalytics.com/documents/admin/r-package-mgmt/
它说:“在DeployR网格节点上手动运行此R脚本。”但不知道如何在网格节点上运行脚本。我如何访问网格节点?
通常,需要关于如何为DeployR安装软件包的指导。
如果您的DeployR安装只有一台服务器,那么“网格节点”意味着您的服务器 - 只需通过SSH(或任何其他允许您访问DeployR的东西)访问并执行所需操作。
与DeployR在Linux上最典型的问题是开发包(那些有-devel
后缀),所需要的编译和构建R封装是DeployR从CRAN库中获取源代码(这是从Windows的主要区别可用性和已预编译包二进制文件的Mac OSX)。
最简单的方法是看RServe日志(如<deployr_home>/deployr/8.0.0/rserve/R/log
),发现有错误消息(S)的一些库不可用(-ies)(例如x
或curl
否则水木清华),然后安装所需的RPM发展(对于我的示例,为yum install xz-devel
或yum install libcurl-devel
)。
从错误消息中找出所需的软件包名称有时是一个相当大的挑战。为此,您可以采用不同的方式,例如如果您知道应该属于它的某个文件名,您可以在基于RedHat的发行版或http://rpm.pbone.net/网站上查找包名称,例如:yum search
。如果出现错误消息curl-config: command not found
,则可以在rpm.pbone.net中查找curl-config
文件,并获取相应软件包名称的提示。
下面是对DeployR一些最常用的开发包,我在亚马逊的Linux AMI使用列表:
- PCRE-devel的
- XZ-devel的
- 的bzip2-devel的
- 的zlib -devel
- libicu-devel的
- 的libstdC++ - devel的
- libcur 1-devel的
- 的libxml2-devel的
由于亚马逊Linux是基于RedHat的发行版,这些软件包名称应该适合你。
您的Amazon EC2实例是网格节点。 DeployR(企业版,不是开源版)可以运行在一组服务器上,每个服务器都是一个网格节点 –