介绍
R是一种流行的开源编程语言,专门从事统计计算和图形学。 它广泛用于开发统计软件和执行数据分析。 R是容易扩展的,并且社区已知为特定的研究领域连续添加用户生成的包,这使得它可应用于许多领域。
在本教程中,我们将向您展示如何安装devtools并使用它直接从GitHub安装软件包。
先决条件
跟着一起,你将需要R,安装一个Ubuntu 16.04服务器用最少的1GB内存,并使用非root用户sudo
权限。 如何设立研发在Ubuntu 16.04可以帮助你。
第1步 - 为devtools安装系统依赖关系
我们将从交互式shell安装devtools,但在我们做之前,我们需要安装这些系统依赖:
sudo apt-get install build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev
一旦完成,我们就可以继续了。
第2步 - 安装Devtools软件包
Devtools将使我们能够直接从GitHub,BitBucket,本地文件安装和构建软件包,以及从CRAN安装特定版本。 为了使devtools
提供站点范围内,我们将确认R的shell作为根:
sudo -i R
从监视器中,我们将使用install.packages()
函数来安装devtools
从官方综合R归档网络(CRAN) 。
install.packages('devtools')
当出现提示时,我们将为0-Cloud选择1,这将使我们连接到RStudio提供的内容交付网络(CDN),以获得地理上最接近的镜像。 进行选择后,将开始安装。 这可能需要一段时间。 当它完成后,接近安装输出结束时,我们应该看到:
Output...
** testing if installed package can be loaded
* DONE (devtools)
接下来,我们将它放到测试中,直接从GitHub获取和构建项目。
第3步 - 从GitHub安装R软件包
在这一步中,我们将直接从GitHub安装Shiny的最新开发版本,R是一个Web应用程序框架。 我们将用做install_github
所提供的功能devtools
。 一个GitHub的包是由它的作者(定义rstudio
),它的名字( shiny
:),你可以从主项目页面的URL GitHub的发现https://github.com/ rstudio/shiny
。
使用以下命令安装:
devtools::install_github('rstudio/shiny')
安装已成功完成,当我们在结尾附近看到以下行并返回到R提示符:
Output. . .
** testing if installed package can be loaded
* DONE (shiny)
>
我们可以看到我们使用以下命令安装的Shiny的特定版本:
packageVersion("shiny")
Output[1] ‘0.14.0.9000’
在下一步中,我们将快速了解一下Shiny。 我们需要先执行几个系统级任务,因此我们将使用以下命令或使用CTRL-D退出监视器:
q()
其中任一将提示您保存工作空间映像,R的工作环境包括用户定义的对象。 这是没有必要的,这样你就可以安全地进入n
。
由于我们将使用Web浏览器来查看Shiny可以做什么的示例,因此我们将确保允许网络流量。
检查防火墙
Shiny是一个Web应用程序框架,因此为了在浏览器中查看其示例,我们需要确保在我们的防火墙上允许网络流量。 内置Web服务器在每次启动时随机选择一个端口,除非它以特定值启动。 为了使防火墙管理更容易,当我们运行示例时,我们将指定端口4040。
让我们检查防火墙的状态:
sudo ufw status
在这种情况下,只允许SSH通过:
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
您可能有其他规则或没有防火墙规则。 由于在这种情况下只允许SSH流量,我们将添加端口4040并在完成后检查状态:
sudo ufw allow 4040/tcp
sudo ufw status
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
4040/tcp ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
4040/tcp (v6) ALLOW Anywhere (v6)
配置防火墙后,我们准备好了解一下Shiny。
运行闪烁:
我们将连接到R,这次是作为普通用户:
R
接下来,我们将加载shiny
:
library("shiny")
Shiny包括十一个内置示例,演示它如何工作。 我们将加载shiny
库,然后运行第一个例子。 因为我们在远程服务器上工作,我们将指定主机地址,以便从本地计算机浏览。 我们还将设置launch.browser
为FALSE
所以它不会尝试在远程服务器上启动一个浏览器:
runExample("01_hello", host = "203.0.113.0", port = 4040, launch.browser= FALSE)
OutputListening on http://203.0.113.0:4040
让我们在网络浏览器中访问此网址:
我们安装使用有光泽,说明devtools
直接从GitHub的库安装。 然后我们运行没有提升权限的示例Shiny应用程序,以验证所有用户都具有对包的访问权限。
重新安装Shiny的稳定版本
对于生产情况,我们将从CRAN安装,除非我们有一个令人信服的理由从存储库安装。
让我们花一点时间回到稳定包。 首先,我们将使用CTRL-C中断服务器,然后使用CTRL-D退出R shell,并以root身份重新输入:
sudo -i R
由于我们退出外壳,我们会被提示选择一面镜子,我们会再次选择1。
我们可以使用以下命令安装稳定版本,这将覆盖从我们在上一步完成的GitHub的安装:
install.packages("shiny")
让我们验证版本的变化:
packageVersion("shiny")
Output[1] ‘0.14’
输出指示,而不是0.14.9000
,我们从GitHub安装的版本,我们现在运行的稳定版本。
注:我们也可以了解从它的描述文件系统的命令行程序包的版本的更多信息。
cat /usr/local/lib/R/site-library/shiny/DESCRIPTION
结论
在本教程中,我们直接从GitHub安装了最新的Shiny包,并学习了如何从CRAN重新安装其稳定版本。 如果你有兴趣了解更多关于Shiny本身,你可能想看看RStudio的Shiny教程 。 您可能也有兴趣安装开源RStudio服务器 ,到远程Linux服务器,这带来了一个IDE到基于服务器的部署上运行的版本R的接口。