🐳

WSL2でRの環境をサクッと作る

2021/12/01に公開

はじめに

半年に1回くらいRを使うライトユーザーです。
今まではWindowsやMacにRStudioをインストールして利用していました。ただ半年も開くと毎回記憶がリセットされていて前回の作業が微妙に残っているのが気持ち悪いので、Dockerで使い捨ての環境を作れないかなと思って調べてやってみたことのまとめです。

前提

以下の環境を構築済み。

  • WSL2
    • Ubuntu 20.04 LTS
      • Docker Engine

コマンド

~$ mkdir rocker
~$ sudo docker pull rocker/tidyverse
~$ sudo docker run -p 8787:8787 -e DISABLE_AUTH=true -v /home/{ユーザー}/rocker:/home/rstudio rocker/tidyverse

コマンド詳細

~$ mkdir rocker

ユーザーフォルダの下にrocker用のフォルダを作っておきます。

~$ sudo docker pull rocker/tidyverse

rocker/tidyverse のイメージを取得します。

~$ sudo docker run -p 8787:8787 -e DISABLE_AUTH=true -v /home/{ユーザー}/rocker:/home/rstudio rocker/tidyverse

コンテナを起動します。

  • -e DISABLE_AUTH=true
  • -v /home/{ユーザー名}/rocker:/home/rstudio
    • wsl側のフォルダとコンテナ側のフォルダを紐づけます
      • これによりWindowsのエクスプローラーで U:\home\{ユーザー}\rocker フォルダに格納したCSVファイルを、RStudio Serverで読み込むといったこともできるようになります

今回知ったこと

  • RStudio Server というものがある
    • 今まで使っていたのはRStudio Desktop
    • RStudio ServerはWebサーバーとして動作する
      • RStudio Serverを起動するとブラウザでRStudioを利用できるようになる
  • rockerというものがある
    • Rを利用するためのDockerコンテナが提供されている
    • 提供されているコンテナはいくつかある
      • tidyverseを使うなら rocker/tidyverse が良さそう

参考記事

Discussion