INPUTしたらOUTPUT!

忘れっぽいんでメモっとく

CentOS6.3(64bit)にShiny Serverをインストールする

R、RStudio Serverのインストールに続きShiny Serverをインストールする。


1. Shinyインストール

RStudio - Installing Shiny Server Open Sourceの通りRにShinyパッケージをインストールする。

$ sudo su - -c "R -e \"install.packages('shiny', repos='http://cran.rstudio.com/')\""


続いてShiny Serverをインストールする。URL見るとCentOS 6.3用もあったので6.3用をインストールする。

$ wget http://download3.rstudio.org/centos-6.3/x86_64/shiny-server-1.1.0.46-x86_64.rpm
$ sudo yum install --nogpgcheck shiny-server-1.1.0.46-x86_64.rpm


2. マルチプロセス化

@wdkz氏のJapan.R 2013での発表によるとShiny Serverは複数同時接続に弱いらしい。


Shiny-Serverをたった1行の変更でマルチプロセス化する方法 - Swarm of Trialsを参考に/opt/shiny-server/lib/worker/app-spec.js を修正する。

$ sudo stop shiny-server
$ cd /opt/shiny-server/lib/worker/
$ sudo cp -p app-spec.js app-spec.js.org
$ sudo vi app-spec.js
29      JSON.stringify(this.settings) +
30      Math.random(); //乱数を追加!
$ sudo start shiny-server


3. その他パッケージのインストール

Shiny Serverで使用するパッケージは次のようにインストールする必要がある。

$ sudo su - -c "R -e \"install.packages('RMeCab', repos='http://web.ias.tokushima-u.ac.jp/linguistik/R')\""
$ sudo su - -c "R -e \"install.packages('twitteR', repos='http://essrc.hyogo-u.ac.jp/cran/')\""
$ sudo su - -c "R -e \"install.packages('wordcloud', repos='http://essrc.hyogo-u.ac.jp/cran/')\""



/srv/shiny-server/以下にshinyアプリごとのディレクトリを作り、ui.Rとserver.Rを置けばhttp://IPアドレス:3838/ディレクトリ名でアクセスできる。
SSLはプロ版のみと公式サイトにはあるけどNginxでhttpsにリライトしたらちゃんとhttpsで動作するっぽい。