使用Marathon启动nvidia-docker容器的最佳方式是什么?我知道Marathon有两种启动容器的方法,一种是在JSON中提供一个shell cmd作为参数,另一种是使用容器字段指定参数。然而,除了JSON中的"cmd“字段之外,我还没有找到一种方法来指定使用nvidia-docker与常规docker的启动容器。
另外,使用cmd启动有什么缺点,就像下面这样:
{
"id": "myimage",
"cmd": "nvidia-docker run -it myimage bash",
"cpus": 1,
"mem": 512.0,
"instances": 3,
}与使用"container“字段相比:
{
"id": "myimage",
"cpus": 1,
"mem": 512.0,
"instances": 3,
"container": {
"type": "DOCKER",
"docker": {
"image": "myimage",
"network": "HOST"
}
}
}发布于 2016-11-28 18:44:52
假设您正在使用nvidia-docker来利用GPU资源,那么您根本不需要使用nvidia-docker,因为GPU support in Mesos已经提供了使用Mesos容器来做这件事所需的一切。您将需要最新版本的Mesos (>=1.0)和马拉松(>=1.3从--enable_features gpu_resources开始)。
如果由于某种原因,这不适用于您的情况,您可以通过设置cmd字段直接调用nvidia-docker,就像您在第一个示例中所做的那样。尽管这可能有一些警告,因为它将直接与docker守护进程通信,可能会绕过Mesos隔离器。
https://stackoverflow.com/questions/40667822
复制相似问题