Shiny Server 安装步骤

R语言非常适合用于统计相关的运算。但是在用户交互方面不够友好。
Shiny Server是RStudio推出的,一个Web服务。它可以接受用户的输入,使用R语言进行计算,最终展示计算结果。这一切都在浏览器上完成。
总之非常实用,现在整理下我自己的安装手册。

1.从代码安装R

./configure --prefix=/opt/r --enable-R-shlib 
make 
make install 

注意1:PATH要设置这个文件,否则可能会找不到R :/etc/profile
注意2:可能依赖其他包比如fortran,你可能还需要执行下面这些命令。

yum install gcc-gfortran 
yum install readline-devel 
yum install libXt-devel 
yum install gcc-c++ glibc-headers

2.安装Xvfb

yum install Xvfb

说明:绘制图形好像默认使用 X11,但是安装过程中遇到了各种麻烦,最后尝试了这个,能够正常显示。

3.安装Shiny

3.1 安装Shiny

R命令行下面安装Shiny的包。

install.packages('shiny')

安装过程中,会安装其他依赖的包。
如果你跟我一样,服务器不能连网络,那就必须下载好压缩包,再传到服务器上,从本地安装。
但是不在R命令行下,而是还要quit()退出来。
安装的命令长这样:

R CMD INSTALL XXXXX.tar.gz 
3.2 安装Shiny Server
yum install --nogpgcheck shiny-server-1.4.2.786-rh5-x86_64.rpm 

配置文件路径:

/etc/shiny-server/shiny-server.conf 

你可以把shiny包里面自带的10个例子,都拷贝到shiny-server的目录下去。

cp -R /opt/r/lib64/R/library/shiny/examples/* /srv/shiny-server/

是的,你以后所有的APP都要在/srv/shiny-server/目录下,然后在浏览器中通过这样的方式来访问:

http://localhost:3838/目录名

另外,启动/停止等命令:

start shiny-server 
stop shiny-server 
restart shiny-server 
status shiny-server 
reload shiny-server #不中断服务的前提下 更新加载配置项

这时可以看下首页:

http://localhost:3838/index.html

页面能够显示,但是绘图的部分好像报错了。

4.绘图引擎

4.1 启动Xvfb

各种泪流满面啊,九牛二虎啊。之前安装一堆东西,企图使用X11,会报错:can’t start PNG device。
后来放弃X11,使用Xvfb。需要启动Xvfb。

Xvfb :3 -screen 1 1280x1024x24
4.1 设置

ui.R需要加入下面这一行:

Sys.setenv(DISPLAY = ":3.1")

访问示例试试:

http://localhost:3838/index.html 
http://localhost:3838/01_hello/ 
http://localhost:3838/02_text/
http://localhost:3838/03_reactivity/
http://localhost:3838/04_mpg/
http://localhost:3838/05_sliders/
http://localhost:3838/06_tabsets/
http://localhost:3838/07_widgets/
http://localhost:3838/08_html/
http://localhost:3838/09_upload/
http://localhost:3838/10_download/
http://localhost:3838/11_timer/

参照:https://www.rstudio.com/products/shiny/shiny-server2/
日文版:http://youngspring1.github.io/post/2016-03-26-shinyserver-jp/