在放弃了其他方法来正确记录我的R
分析环境以实现分析再现性之后,我开始着手将每个单独的分析包装到一个docker
容器中。这是我所做的:
-
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
和结尾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.
我究竟做错了什么?容器在哪里丢失(什么)关于默认启动什么的信息?