我是 mesos 和马拉松领域的新手。我有运行我的 docker 容器的 mesos 奴隶。我正在使用马拉松来实例化一个 mesos 任务。这是我的简单 json 文件:
{
"container": {
"type": "DOCKER",
"docker": {
"image": "tomcat:8.0"
}
},
"id": "tomcat",
"instances": 1,
"cpus": 0.5,
"mem": 512,
"uris": [],
"cmd": "while sleep 10; do date -u +%T; done"
}
我使用 curl 并使用 marathon 提出发布请求。我的 docker 容器已按照马拉松比赛成功部署。到这里一切都很好。现在我使用命令 ssh 进入我的 docker 容器
sudo docker exec -i -t/bin/bash
我没有看到为 tomcat 生成的任何日志。我感觉我的tomcat没有启动。运行 telnet 8080 失败,因为 telnet 在容器上不可用。当我运行 ps -aef 时,我看到以下内容可用“/bin/sh -c while sleep 10; do date -u +%T; done”。但是我仍然不能说 tomcat 是否正在运行。有没有人遇到过这样的问题......任何调试它的指针。
谢谢 阿希什
最佳答案
在您的 JSON 文件中,您应该有 "cmd": ""
(最后一行),否则 docker 容器命令将被覆盖。
关于tomcat - docker mesosphere marathon - 无法看到 docker 容器内正在运行的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28411365/