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

h2o4gpu Dockerfils - CentOS vs Runtime and Starting Image

我一直在构建 h2o4gpu Docker 映像,在完成 CentOS 映像的构建过程后,发现自己还有几个问题:

  1. Dockerfile_runtime和Dockerfile-build-centos.x86-64-centos7-cuda9.0有什么区别?据我所知,Dockerfile_runtime 是为 Ubuntu 图像设计的,但是是否有首选图像可供使用?

  2. 构建 Centos Docker 文件后,我一直在使用下面的代码来尝试 运行 它:

    Docker 运行 -it --rpm -p 8888:8888 dockerimage

当我这样做时,出现错误:

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]

然而,这在输出上没有任何可见的变化,所以我一直在摸索下一步该做什么。

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

谢谢!

What is the difference between the Dockerfile_runtime, and Dockerfile-build-centos.x86-64-centos7-cuda9.0?

builddocker文件(我们有 2 个)旨在仅包含构建项目所需的内容,而 运行time 文件还包含项目所需的内容在 运行 时间内,添加一些示例数据并启动 Jupyter 笔记本。添加 Centos 是因为 Ubuntu 映像生成的二进制文件不能 运行 在相当多的 Linux 发行版上轻松地使用(由于 Ubuntu 使用的 glibc 版本较高)。我们有一个 PR,它将我们所有的 docker 重写为基于 Centos 的,但在合并之前仍需要对其进行更多测试。

but is there a preferred one to use?

构建 whl Dockerfile-build 或 Centos 都可以。如果你想要 运行 时间 docker 那么 Dockefile-runtime 是首选。

After building the Centos Dockerfile

你是如何构建它的?您可以查看我们的 docker 构建脚本,我们是如何做到的 https://github.com/h2oai/h2o4gpu/blob/master/scripts/make-docker-runtime.sh 应该不需要添加 run.sh 文件,因为它正在被复制到 docker 文件中。 Centos docker 文件不启动 Jupyter,暴露 8888 也不包含 run.sh.