h2o4gpu Dockerfils - CentOS vs运行时和启动映像

时间:2018-05-10 18:05:19

标签: docker h2o

我一直在构建h2o4gpu Docker镜像,在完成CentOS镜像的构建过程之后,又发现了一些问题:

  1. Dockerfile_runtime和Dockerfile-build-centos.x86-64-centos7-cuda9.0有什么区别?我可以说,Dockerfile_runtime适用于Ubuntu映像,但是有一个首选使用吗?

  2. 构建Centos Dockerfile后,我一直在使用以下代码尝试运行它:

    Docker run -it --rpm -p 8888:8888 dockerimage

  3. 当我这样做时,我收到错误:

    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]
    

    然而,这并没有对输出做出任何明显的改变,所以我一直在摸不着想做什么。

    我感谢所提供的任何见解或想法!

    谢谢!

1 个答案:

答案 0 :(得分:0)

  

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