Windows の WSL2　Ubuntu に Rstudio server をインストール、さらに Shiny パッケージをインストールする。

# 背景
統計分析結果をビジュアルで、かつ、インタラクティブに表示するWebアプリを作りたくなった。統計分析ソフトウェアRと、そのWebインターフェース開発パッケージのShinyで可能らしい。著者の現在の開発マシンはWindowsで、Web上で情報を探索すると、Windowsでの開発は文字コードだかファイルシステムのフォルダの指定書式だかの違いによりちょいちょい面倒らしい。じゃあ、WSL2のUbuntuにインストールできんもんかね、と調べてみたら可能っぽかったのでやってみることにした。一方、Shinyで作成したページのデプロイ方法、Web上での公開方法については、shiny.ioにデプロイする記事ばかりで、自鯖での公開方法ははっきりとはわからない。そこは後で考えることにして（？）、とりあえず、インストールしてみることにした。

### この記事の想定する対象読者
著者は、以下の環境で作業を行った。本記事が類似環境の読者の参考になれば幸いです。

- PC: Windows11 Insider preview （11正式版へのアップグレードできないマシン）
- WSL2　
- Ubuntu20.04

### 参考サイト
https://cran.r-project.org/bin/linux/ubuntu/#install-r

https://qiita.com/honda28/items/b2531cc8afc7c42a528b

### 前提条件
WindowsにWSL2とUbuntu20.04がインストール済みであること。WSL2とUbunt20.04のインストール方法については、読者各位で対応されたい。Googleで検索すれば手順の情報があるはず。

# セットアップ手順

### 手順の確認
1.　R のインストール
2.　Rstudio server のインストール
3.　Rstudio 上で shiny パッケージのインストール


## 1. R のインストール

cran の ubuntu へのインストール手順にほぼ従うのみ。以下のコマンドを、WSL2 ubuntu20.04 のターミナルで順に実行。コピペで行けるはず。

```
sudo apt install --no-install-recommends software-properties-common dirmngr
```
このコマンドは、Rをインストールするための、UbuntuOS側の準備ソフトウェア。著者の場合は、すでにインストールずみだった。（コマンド実行後の画面に　～ is already the newest version などと表示される。）

```
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
```
このコマンドは、Rのインストールファイルを取得するために、UbuntuOSのソフトウェア管理ソフト apt が R ファイル配布サーバーと通信できるようにするための証明書ファイルを取得し、apt に認識させる。証明書

```
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"
```
このコマンドは、apt に R のインストールファイルの在処を認識させる。

```
sudo apt install -y r-base r-base-core r-recommended r-base-dev gdebi-core build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev
```
このコマンドで、R が ubuntu にインストールされる。数分間待つ。


## 2. Rstudio server のインストール

```
wget https://rstudio.org/download/latest/stable/server/bionic/rstudio-server-latest-amd64.deb
```
このコマンドで、最新かつ安定版のRstudio server インストールファイルをダウンロードする。ダウンロードしたファイルはコマンド実行フォルダ（カレントディレクトリ）に保存される。

```
sudo gdebi rstudio-server-latest-amd64.deb
```
ダウンロードしたインストールファイルを使って、Rstudio serverをインストールする。数分間待つ。

## 3.　Rstudio 上で shiny パッケージのインストール

Rstudio の利用開始方法は次のとおり。

### Rstruio server を起動

```
sudo rstudio-server start &
```
sudo で起動する必要があるのか、と問われると、たぶんあると思う、と回答する。なお、著者がコマンドの最後に & をつけたのは、コマンド実行後も同じターミナルで別コマンドを実行したいから。 & をつけたコマンドはバックグラウンドで動作する。

このあと、WindowsのWebブラウザで、
　http://localhost:8787/
にアクセスすると、Rstudio Serverへのログイン画面になる。
![スクリーンショット 2022-03-29 205302.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699890/e2137387-941b-b1e2-6426-facd2d1cbc25.png)

ちなみに、Windowsの起動のたびにubuntuターミナルからrstudio-server start コマンドを入力するのが面倒だ、という場合は、ubuntu のサービスとして起動時に自動開始させるようにしてはどうだろうか。著者は設定してみたが、読者諸兄は自己責任で。
```
sudo systemctl enable rstudio-server
```

### Rstudio server へのログイン
ログインのユーザーID、パスワードがわからずに焦るかもしれないが、これは、ubuntuのユーザーIDとパスワードでログインできる。rstudio-server コマンドが、管理者権限を使ってユーザー管理情報参照を行うものと推察される（なので、sudo で起動する必要があると思ったのだ）。
ログインすると、次のような画面になる。
![スクリーンショット 2022-03-29 205701.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699890/0a90f319-d46a-6e48-c8ba-643b7694cf82.png)


### shiny パッケージのインストール
上部の「Tools」メニューで「Install Packages...」を選び、出てきたダイアログで shiny を選択して install ボタンを押す。インストールは自動で進む。しばらく待つ。
![スクリーンショット 2022-03-29 210120.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699890/8c11eefe-5804-02f4-27a8-3b78bd9d35c1.png)
![スクリーンショット 2022-03-29 210220.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699890/15cc240c-5599-4fb5-ef73-6e67029adcbd.png)


# おわりに
WindowsのWSL2のubuntuの準備も含めて、それほど手間はかからないと思う。
以上、読者の参考になれば幸いです。

### その他. おまけのインストール
shinydashboard というパッケージも便利なのかも。

それから、Rの分析では、著者はradiant を使うのが好き（だった・・・使うのは数年ぶり）なので、radiantもインストールしてみた。この記事を書いた2022年3月末時点では、radiantのインストールにおいて gfortran が Warningを表示するが、エラーにはならず、インストールは完遂された。radiantをインストールしたら、radiant::radiant() コマンドをRstudioのConsoleで実行すればよい。こんな感じでお気軽にデータのビジュアライズも可能。
![スクリーンショット 2022-03-29 211947.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699890/4464abe4-f6a0-ecb1-4bd0-ba37e29d922a.png)