4 事前準備(Mac編)

それでは,早速お手持ちのMacにDockerを導入しましょう(Windowsは前の3 事前準備(Windows編)をご覧ください)。なお, Dockerを使うにあたって,15GBくらいハードディスクに余裕があると良いかと思います。

4.1 MacへのDockerの導入方法

Macユーザーの方は,以下の動画を参考にDockerを導入ください。なお,M1 Mac(Apple Silicon)に関しては,2021年8月の段階でもRockerが利用できません2。つまり,Rockerをベースにした国里のPaper-rも動きません。M1 Mac(Apple Silicon)の利用者は,こちらで,DockerではなくRSutidoとRを直接的にインストールください。

ターミナルには以下のコマンドを入力します(適宜,PASSWORDやnameの=以降は,好みによって変更ください)。

docker run -e PASSWORD=paper -e DISABLE_AUTH=true -p 8787:8787 -v $PWD:/home/rstudio -d --name paper ykunisato/paper-r

なお,Dockerではタグによる指定もできます,例えば,R4.1.1を指定したい場合は,以下のように最後に“:4.1.1”を追加すると指定できます(詳しくはpaper-rのページのTagを確認ください)。

docker run -e PASSWORD=paper -e DISABLE_AUTH=true -p 8787:8787 -v $PWD:/home/rstudio -d --name paper ykunisato/paper-r:4.1.1

普段使っているホームディレクトリがマウントされていると思います。

4.2 Dockerコマンド

4.2.1 コンテナの確認と開始

コンテナの動作確認するには,ターミナルに以下を打ち込みます。STATUSがUpになっているとコンテナが動いています(再起動後に止まったりしていることがある)。

docker ps -a

もしコンテナが停止している場合は(STATUSがExitedになっている),ターミナルに以下を打ち込んで,コンテナを開始します。

docker start コンテナ名(上記の場合はpaper)

4.2.2 コンテナの停止と削除,イメージの削除

もうコンテナが不要になったら,停止して削除します。コンテナの停止には,ターミナルに以下を打ち込みます。

docker stop コンテナ名(上記の場合はpaper)

コンテナの削除には,ターミナルに以下を打ち込みます。

docker rm コンテナ名(上記の場合はpaper)

rmしてもコンテナが削除されただけでダウンロードしたイメージは残っています。まず,以下をターミナルに打ち込んで,イメージの状況を確認します。削除したいイメージのIMAGE IDをコピーします。

docker images

上記でコピーしたIMAGE IDを使って,以下をターミナルに打ち込んで,イメージを削除します。

docker rmi IMAGE_ID

4.3 Dockerが使えない場合

Dockerが使えないor使いたくない場合は,以下に進んでください。

https://ykunisato.github.io/jpa2021-tws-jpaRmd/05.html


  1. Apple Silicon(M1 Mac)では,ARM64アーキテクチャーとなり,大きな変更がなされました。Apple側は従来のIntel x86_64のソフトが動くような工夫をしており,Dockerも現状では対応しています。しかし,2021年8月の段階では,ARM64でネイティブに動くRStudioがないのと(動作はしますが,ARM64用ではない),ARM64ベースのRパッケージの管理システムないので,現状ではまだちゃんと動くR用のDockerがありません(実は個人開発で動くものもあるのですが,一番シェアのあるRockerからのリリースを待つのが良いかと思います)。↩︎