R Shiny Server 安装步骤记录

十一月 25, 2014 R, web开发, 可视化 por DeanGao

1 前言

其实RStudio公司自己构建了R Shiny Application运行的平台(http://www.shinyapps.io/ ), 用户可以通过RStudio上面的工具把自己编写调试好的Shiny Application上传到shinyapps.io上去(这里需要先注册和设置些东西)。这样构建了一个云端的服务器。但是有时还是有必要自己去构建一个自己的Shiny 服务器,这样操作起来还是方便些。下面就讲讲如何在自己的服务器上构建Shiny Server。

转载请注明出处:网址+邮箱:
例如: 转自 www.iwhgao.com (gaowenhui2012@gmail.com)

728915243186942831_副本


 

2 安装步骤

2.1 安装R

    这里就不再赘述了

2.2 在R中安装shiny模块

    命令行中运行 install.package(“shiny”), 不出意外的话就能安装成功。如果中间出现错误的话,可能是一些依赖包没成功的安装(很有可能是版本的问题,这时可以从rstudio的模块镜像网站上下载最新的包来手动安装,总的一句话:缺什么补什么)。安装好了后,最好的是先加载下shiny模块,看是否安装成功。

2.3 下载shiny server安装包

shiny server 提供了免费版和专业版,免费版功能有限,专业版包含很多功能(像SSL,多CPU支持等)。
f0da15ef-ccac-4543-84ae-d9df462afd15
cf891697-ec83-4398-948a-5c4858785bef
这里http://www.rstudio.com/products/shiny/download-server/ 提供了下载链接,需要提供邮箱才会出现下载页面,选择对应Linux发行版的Shiny Server进行下载。我这里是CentOS 6.5.
执行如下命令:
 

2.4 安装shiny server

执行如下命令:
yum install –nogpgcheck shiny-server-1.2.3.368-x86_64.rpm
e157249e-be02-42ea-a8de-19d2ecda8c82
 

3. shiny server 配置解析

shiny官网上提供了详细的配置知道:
主要讲的几点是:

3.1 管理shiny server服务

start shiny-server # 启动
stop shiny-server # 停止
restart shiny-server # 重启
status shiny-server #查看状态  比如:shiny-server start/running, process 30370
reload shiny-server #不中断服务的前提下 更新加载配置项
 

3.2 配置shiny server

shiny-server 默认的安装目录是:/opt/shiny-server
目录内容:
assets       build        COPYING      lib          node_modules  R          templates  VERSION
bin          config       ext          manual.test  NOTICE        README.md  test
binding.gyp  config.html  GIT_VERSION  NEWS         package.json  samples    tools
 
其中的默认配置文件是:/opt/shiny-server/config/default.config
内容是:
# Instruct Shiny Server to run applications as the user “shiny”
run_as shiny;
 
# Define a server that listens on port 3838
server {
  listen 3838;
 
  # Define a location at the base URL
  location / {
 
    # Host the directory of Shiny Apps stored in this directory
    site_dir /srv/shiny-server;
 
    # Log all Shiny output to files in this directory
    log_dir /var/log/shiny-server;
 
    # When a user visits the base URL rather than a particular application,
    # an index of the applications available in this directory will be shown.
    directory_index on;
  }
}
这个文件和/etc/shiny-server/shiny-server.conf是一样的。
后面会具体讲解shiny server的配置细节。正如配置文件中所写,默认的网站目录是根目录下的srv的shiny-server目录,端口是3838,log目录是 /var/log/shiny-server。
lh /srv/shiny-server
lrwxrwxrwx. 1 root root 38 Nov 25 00:02 index.html -> /opt/shiny-server/samples/welcome.html
lrwxrwxrwx. 1 root root 37 Nov 25 00:02 sample-apps -> /opt/shiny-server/samples/sample-apps
其实就是opt下对应的链接。

4 访问第一个shiny application

在浏览器中输入 localhost:3838 (或者对应IP地址, 如 http://192.168.1.100:3838/  )就会出现如下界面:
 
QQ截图20141125135043
 
如果出现Error: unable to start device PNG,
那应该是安装R的时候没有选择对PNG X11的兼容问题,要先在linux上安装下png相关的库文件(libpng-xxxx等),再重新安装R。
 
如果问题还是得不到解决
在ui.R 或者server.R中添加 对bitmapType的设置
library(shiny)
options(bitmapType=”cairo”)
原创文章,转载请注明: 转载自rabbit gao's blog
本文链接地址: R Shiny Server 安装步骤记录