搜索
查看: 3388|回复: 3

Shiny-server安装及初步使用

[复制链接]

29

主题

131

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2017-4-21 00:29:42 | 显示全部楼层 |阅读模式
本帖最后由 anlan 于 2017-4-21 00:49 编辑

前几天刚好在亚马逊云上注册了一个1年免费的Amazon Web Services (AWS) ,正好以此来尝试学习下shiny的相关东西。
主要参考了:
http://deanattali.com/2015/05/09/setup-rstudio-shiny-server-digital-ocean/
http://www.bio-info-trainee.com/1683.html


操作系统:ubuntu
1. 安装 R

        sudo apt install r-base

2. 安装 Rstudio-server
        sudo apt-get install gdebi-core
        sudo apt-get install libapparmor1
        wget https://download2.rstudio.org/rstudio-server-1.0.143-amd64.deb
        sudo gdebi rstudio-server-1.0.143-amd64.deb
因为Rstudio-server不能以root用户登录,所以我们需要创建一个用户
        sudo addusr anlan
        ......
然后在网页上输入ip:8787进入Rstudio-server界面,输入用户和密码,即可登录

3. 安装 Shiny
        sudo su - -c "R -e \"install.packages('shiny', repos='http://cran.rstudio.com/')\""
不能直接进入R,然后install.packages("shiny"),因为如果这样安装,是将shiny包安装下当前登录用户的个人library中,使得最终shiny-server无法运行
        apt-get install gdebi-core
        wget https://download3.rstudio.org/ub ... 1.5.3.838-amd64.deb
        sudo gdebi shiny-server-1.5.3.838-amd64.deb
做完以上几步后,shiny-server算是初步安装好了,然后可以在网页上ip:3838进入shiny-server界面(ip是你服务器的ip地址)。一般我们能看到左边一列的文字和右边的两个框。当然还需要再安装个rmarkdown,不然还是会有error的
        sudo su - -c "R -e \"install.packages('rmarkdown', repos='http://cran.rstudio.com/')\""

4. 配置shiny server

    * Shiny Server log is at /var/log/shiny-server.log
    * The default Shiny Server homepage you’re seeing is located at /srv/shiny-server/index.html - you can edit it or remove it.
    * Any Shiny app directory that you place under /srv/shiny-server/ will be served as a Shiny app. For example, there is a default app at /srv/shiny-server/sample-apps/hello/, which means you can run the app by going to http://123.456.1.2:3838/sample-apps/hello/
    * The config file for Shiny Server is at /etc/shiny-server/shiny-server.conf
    * To reload the server after editing the config, use sudo reload shiny-server
    * When hosting an Rmarkdown file, name the file index.rmd and add runtime: shiny to the document’s frontmatter


5. 赋予shiny权限
假设当你登录是以自己用户登录,你在shiny server创建的文件只有该用户(除了root)才有权限读写,但是shiny server是以shiny用户来运行shiny的app,所以要给予shiny用户在一些目录的权限。
例如:
        sudo groupadd shiny-apps
        sudo usermod -aG shiny-apps dean
        sudo usermod -aG shiny-apps shiny
        sudo chown -R dean:shiny-apps /srv/shiny-server
        sudo chmod g+w /srv/shiny-server
        sudo chmod g+s /srv/shiny-server  ####在该目录下创建的文件都属于该目录所属的组


6. 下载shiny官网的例子
        git clone https://github.com/rstudio/shiny-examples.git
文件是要下载到/srv/shiny-server中


7. 运行例子程序
        http://ip:3838/shiny-examples/010-download/ (ip是你服务器的ip地址)
想要运行哪个shiny app,只要在ip:3838/后面添加/srv/shiny-server中的文件的相对路径即可






















回复

使用道具 举报

634

主题

1182

帖子

4030

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4030
发表于 2017-4-21 09:44:40 | 显示全部楼层
赞,十分赞
你这个问题很复杂,需要打赏,请点击 http://www.bio-info-trainee.com/donate 进行打赏,谢谢
回复

使用道具 举报

2

主题

21

帖子

239

积分

中级会员

Rank: 3Rank: 3

积分
239
发表于 2017-6-20 19:27:08 | 显示全部楼层
mark,好文!
回复

使用道具 举报

2

主题

21

帖子

239

积分

中级会员

Rank: 3Rank: 3

积分
239
发表于 2017-6-20 19:34:42 | 显示全部楼层
本帖最后由 AdaWon 于 2017-6-20 20:19 编辑

歪个楼,请问您遇到了以下情况吗?

[user@mgmt dir]$ R
Fatal error: cannot create 'R_TempDir'

[user@mgmt dir]$ ll -ad /tmp
drwxrwxrwt. 2 root root 135168 Jun 20 19:12 /tmp


[user@mgmt dir]$ df -lh /tmp
Filesystem      Size  Used Avail Use% Mounted on
/tmp            100G  100G     0 100% /tmp


ps: 解决方案:https://stackoverflow.com/questi ... not-mkdir-r-tempdir
find who is filling up the tmp dir or /root dir and delete it
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树    

GMT+8, 2019-3-26 19:04 , Processed in 0.031986 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.