R言語による電子カルテデータの二次利用

~R言語初心者がデータ処理を楽しめるように基本的内容中心のサイトです~

shiny server環境構築(ubuntu16.04)

職場のみんなでshinyアプリが使えるようにshiny server環境を構築してみたいと思います。

www.rstudio.com

今回も練習用にUbuntu仮想マシンを用意しました。

まずR、shiny、shiny-server等インストールしましょう。

$ sudo apt-get -y install r-base
$ sudo su - \
-c "R -e \"install.packages('shiny', repos='https://cran.rstudio.com/')\""
$ sudo apt-get install gdebi-core
$ wget https://download3.rstudio.org/ubuntu-12.04/x86_64/shiny-server-1.5.3.838-amd64.deb
$ sudo gdebi shiny-server-1.5.3.838-amd64.deb

これでインストールは終了です。
ブラウザにlocalhost:3838と入力してみましょう。
f:id:r_beginner:20170427203415j:plain
こんな画面がでれば上手くいっていると思います。

rmarkdown packageもインストールしておきましょう。

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

ブラウザにhttp://localhost:3838/sample-apps/rmd/と入力すると、
f:id:r_beginner:20170427205401j:plain
上手く見えたでしょうか。

今度は自作shinyアプリを、動かしてみましょう。
f:id:r_beginner:20170427221723j:plain
/srv/shiny-server/sample-apps以下に自作ファイルを起きます。hello,rmdフォルダはサンプルで、もともとあるものです。
ここにsample0427フォルダを作成します。

ユーザーをrootグループに入れておきます。

$ sudo gpasswd -a <username> root

あとは作成したshinyファイルを入れるだけです。

$ mkdir sample0427
$ gedit ui.R
$ gedit server.R

でshinyファイルを作成しました。
ブラウザでlocalhost:3838/sample-apps/sample0427と入力してみましたが、エラーで動いていないようです。

$ sudo systemctl status shiny-server
$ sudo systemctl restart shiny-server

serverは動いているようですし、再起動してみましたが、うまくブラウザから見えない…

$ sudo chmod 777 ui.R
$ sudo chmod 777 server.R
$ sudo systemctl restart shiny-server

権限与えてみましたが、ダメ

パッケージが入っていない?ggplot2 packageを入れてみましょう。

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

f:id:r_beginner:20170427213211j:plain

今度は上手く表示されました。パッケージが入っていないだけだったのですが、気づくのに少し時間がかかりました。とりあえずこれで自作アプリがshiny-serverで動く環境ができました。あとは時間のある時に、設定ファイルの勉強をしておけば良いかな。


参考