我一直在构建h2o4gpu Docker镜像,在完成CentOS镜像的构建过程后,我发现自己还有一些问题:
当我这样做时,我收到错误:
Error response from daemon: oci runtime error: container linux.go:247: starting container process caused "exec \"./run.sh\": stat ./run.sh: no such file or directory
我确实尝试添加包含的run.sh文件,部分原因是我看到它包含在Dockerfile_runtime中:
COPY run.sh /run.sh
ENTRYPOINT ["./run.sh"]
CMD ["/run.sh]
但是,这对输出没有任何明显的变化,所以我一直在摸不着想做什么。
我感谢所提供的任何见解或想法!
谢谢!
Dockerfile_runtime和Dockerfile-build-centos.x86-64-centos7-cuda9.0有什么区别?
build
dockerfiles(我们有2个)仅包含构建项目所需的东西,而运行时还包含项目在运行时所需的东西,添加一些示例数据并启动Jupyter笔记本。由于Ubuntu映像生成的二进制文件无法在很多Linux发行版上轻松运行(由于Ubuntu使用的高glibc版本),因此添加了Centos one。我们有一个PR将所有我们的码头工人重写为Centos,但仍然需要在合并之前对其进行更多测试。
但有一个首选使用?
为了建造whl
,Dockerfile-build
或Centos都可以。如果你想要一个运行时泊坞机,那么首选Dockefile-runtime
。
构建Centos Dockerfile之后
你是如何建造它的?你可以看看我们的docker构建脚本我们是怎么做的https://github.com/h2oai/h2o4gpu/blob/master/scripts/make-docker-runtime.sh应该没有必要添加run.sh
文件,因为它正在dockerfile中被复制。 Centos docker文件没有启动Jupyter,暴露8888也不包含run.sh
。