分析の再現性を目的として分析環境を適切に文書化する他の手段をあきらめた後、R
個々の分析をdocker
コンテナーにラップすることに着手しました。これが私がすることです:
プロジェクト
rstudio
から最新のコンテナーをプルします。rocker
docker pull rocker/rstudio
プロジェクト固有のコピーを作成する
docker run -d -p 8787:8787 rocker/rstudio # Produces baseID docker commit --message="Snapshot of current rocker/rstudio container" <baseID> rstudio_project.2018 docker stop <baseID>
コンテナーを起動します。
docker run -d -p 8787:8787 -e ROOT=TRUE rstudio_project.2018 # produces ID
R
(Studio
)-ベースのプロジェクト分析 ...sudo apt-get clean
andで終了sudo rm -rf /tmp/*
Docker イメージをエクスポートします。
docker export -o docker_rstudio_project.2018.tar <ID> xz docker_rstudio_project.2018.tar
関連するすべてのコンテナー/イメージをローカル レジストリから削除した後、次のようにパッケージ化されたプロジェクトの再訪をエミュレートしようとします。
コンテナーをインポートします。
docker import docker_rstudio_project.2018.tar.xz rstudio_project.2018.2
(試してみてください) 元のコンテナと同じようにコンテナを起動します。
docker run -d -p 8787:8787 -e ROOT=TRUE rstudio_project.2018.2
次に、次のエラーに直面しています。
docker: Error response from daemon: No command specified.
私は何を間違っていますか?デフォルトで何を開始するかについて、コンテナーはどこで (何を) 情報を失いましたか?