Docker部署在Marathon上失败,否则工作正常

时间:2015-11-03 17:18:46

标签: docker mesos marathon

我一直在尝试使用Mesosphere Marathon在Mesos上部署基于docker容器网络的应用程序。

我首先尝试部署我的Play Framework应用程序,当我使用docker容器启动它时它可以正常工作。然后我也尝试在Mesosphere网站上提到example application。两者都在马拉松内部失败,但在作为独立的docker图像运行时工作正常。

应用程序显示为" Waiting"或"部署"在Maraos Web UI中,在Mesos上它失败了。我确保Mesos奴隶运行良好。 我相信因为应用程序在Mesos上失败,Marathon会尝试重启它,这就是为什么我几乎总是得到这些状态消息。

我以前尝试在Marathon(同样的安装)上部署相同的应用程序(没有将它包装在docker容器中)并且它运行良好。但是,我们确实希望将Docker用于我们的应用程序。

我已经完成了大量的教程,一切似乎都遵循"规则"。我不明白可能出现的问题。

修改

E1104 19:29:01.291219  4242 slave.cpp:3342] Container '9dbebe8c-5506-4f70-b560-34be39ecdc96' for executor 'mediator.30dbd1ed-82fc-11e5-b1d4-56847afe9799' of framework '64d39023-aad3-4fdc-8565-6d8e3ec9cb77-0000' failed to start: Failed to 'docker -H unix:///var/run/docker.sock pull devrep/message-mediator:latest': exit status = exited with status 1 stderr = Error: image devrep/message-mediator:latest not found
W1104 19:29:01.293334  4244 docker.cpp:1002] Ignoring updating unknown container: 9dbebe8c-5506-4f70-b560-34be39ecdc96
E1104 19:29:06.711524  4241 slave.cpp:3342] Container 'b7f8004a-2759-41ec-8169-61d04a7c4c3d' for executor 'mediator.343b027e-82fc-11e5-b1d4-56847afe9799' of framework '64d39023-aad3-4fdc-8565-6d8e3ec9cb77-0000' failed to start: Failed to 'docker -H unix:///var/run/docker.sock pull devrep/message-mediator:latest': exit status = exited with status 1 stderr = Error: image devrep/message-mediator:latest not found

2 个答案:

答案 0 :(得分:0)

如果没有实际的错误消息或日志,很难猜出您的问题可能是什么。

我首先想到的是你应该检查你的Mesos Slaves是否以--containerizers=docker,mesos标志启动。如果没有,它根本无法工作。

此外,如果您正在使用私有注册表,请确保您的Mesos Slaves上的Docker已配置为使用它,或者遵循Marathon docs中有关如何使用私有注册表的指南

你可以在任何Mesos Slave上做docker pull devrep/message-mediator:latest吗?

另外,请参阅

答案 1 :(得分:0)

我知道它很晚才回答它,但可能会有所帮助。查看我发现的日志

devrep/message-mediator:latest

此处latest是图片的标记名称,如果您未在容器泊坞窗图片中提供一个或将其留空,如下所示

  "container": {
    "type": "DOCKER",
    "docker": {
      "image": "devrep/message-mediator",
    },
  },

它会自动尝试拉出我非常怀疑会出现的devrep/message-mediator:latest,所以请尝试添加标签名称,例如在我的情况下它是v1

devrep/message-mediator:v1