Help us understand the problem. What is going on with this article?

Dockerを利用してRStudio ServerでRStan環境を準備したあと。

More than 3 years have passed since last update.

この記事は,RStudio Advent Calendar 2016の二日目の記事です。

Dockerを利用してRStudio ServerでRStan環境を準備する に関する補足記事です。なので先にそちらをご覧ください。
※本当は併用する予定だったのですが,Qiitaがアドカレを併用認めない仕様っぽいので,追記記事を作ることにしました。

運用について

DockerでRStudio Serverを立てた後ですが,コンテナを削除しない限り,変更などはそのまま継承されます。つまり,Rのパッケージを追加でインストールしていっても,コンテナがそのまま残していれば継続して使えます。

ただし,このような使い方はあまり向かないと思います。Dockerの利点はimageからコンテナという環境をさくっと構築できる点であり,長期的に運用するようなことを念頭においていません。使い捨てや検証用,あるいは環境の共有するような感じです。もし,長期的に色々と使っていくのであれば,Vagrantなどコンテナ型ではなくマシンとして仮想環境を整備するほうが柔軟でいいかなと思います。VagrantでRStudio Serverを構築するには,以前書いたので参考にしてもらえればと思いいます:

Vagrantでローカルの仮想マシンにRStudioServer環境を作る

イメージの更新を当てるには

ベースにしているのがhadleyverseで,これはかなりの頻度で更新されています(数日くらい)。なので新しいイメージに更新したいなら,以下の手順を踏んでください。

  1. 依存してるコンテナを停止
  2. 依存してるコンテナを削除
  3. `docker pull (イメージ名):(タグ名)

更新されていれば,新しく入ってくるはずです。

自分好みにRStudioをカスタマイズしたものを再利用していきたい

Dockerfileを自分好みに編集してイメージをBuildするか,あるいはコンテナを手元で修正してそれをcommit→pushすれば可能です。イメージを公開するにはDockerイメージ用のDockerHubリポジトリが必要になりますので,DockerHubアカウント作成が必要になります。以下のサイトが参考になるかもしれません:

Docker イメージの働き

Dockerfileを作成

Dockerfileを初めて触るのは難しいですから,参考になるものを見ながら修正していくといいかと思います。これをGitHubなどに設置して,DockerHubと連動するようにするとスムーズです。

手元のコンテナをPush

  1. 事前にどこをどう設定して残すかをリストアップ
  2. ベースになるイメージから新たにコンテナ作成
  3. カスタマイズを実施
  4. docker commitを実施

もし公開するのであれば,このコミットしたイメージをDockerHubにpushする作業が必要となります。細かい手続きについては,私がしろううというのがあるので省略します。すみません。

問い合わせについて

何かありましたら,Twitterの@kazutanもしくはここのコメント,Dockerfileに関することでしたらGitHubリポジトリのissueにおねがいします。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away