个人比较欣赏R shiny制作的网页,入门简单,上手极快,多看点例子,制作复杂逻辑的网页也不是问题。这篇实战指南有四个步骤:
至少需要root权限的linux系统 (我测试了阿里云)
安装R (一般安装最新版,)
在R中安装shiny模块 (一般还可以多安装一些模块)
下载并且安装shiny server安装包 (根据系统选择)
前面三个步骤没有什么好说的了,如果你需要继续看这篇指南,我就默认你已经会了。
那么重点,就是安装shiny server本身咯:
这里http://www.rstudio.com/products/shiny/download-server/ 提供了下载链接,需要提供邮箱才会出现下载页面,选择对应Linux发行版的Shiny Server进行下载。我这里是CentOS 6.5.
64bit
Size: 44.6 MB
MD5: 45160b08eed65c89e0a9d03c58eba595
Version: 1.4.2.786
Released: 2016-02-19#直接下载安装包,所以非常简单,我的命令是:sudo yum install R
$ wget https://download3.rstudio.org/centos5.9/x86_64/shiny-server-1.4.2.786-rh5-x86_64.rpm
$ sudo yum install --nogpgcheck shiny-server-1.4.2.786-rh5-x86_64.rpm
这里我也是学习的别人的方法,参考:
如果系统很烂,缺少一堆的库文件,简单的
sudo yum install
还会各种报错,如果需要下载源码来安装,那会很麻烦,这里就不讨论了。如果安装成功,就有下面的界面:
成功之后就可以浏览shiny的网页了,程序自带测试例子,如果是在本地linux系统,而且自带浏览器的界面版linux,那么直接在浏览器中输入 localhost:3838 (或者对应IP地址, 如 http://192.168.1.100:3838/ 这个IP是假的 )就会出现。
但是阿里云服务器访问一般通过外网链接,因为要通过你的真正IP来访问3838端口,所以需要设置防火墙规则,不然依然是不能访问,防火墙自己学习如何设置把。
安装成功了之后,还有一个更重要的事情就是维护,我下面简单介绍一些,然后会写一篇维护心得体会:
shiny官网上提供了详细的配置指导
shiny-server 默认的安装目录是:/opt/shiny-server
目录内容:
# 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。
默认程序存放在: /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下对应的链接。