Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Marathon无法运行docker容器中的应用程序_Docker_Mesos_Marathon - Fatal编程技术网

Marathon无法运行docker容器中的应用程序

Marathon无法运行docker容器中的应用程序,docker,mesos,marathon,Docker,Mesos,Marathon,我有三个安装了docker的节点。在master node中,我可以毫无问题地运行Mesos和马拉松。详情如下: 首先,我使用以下命令进入docker: docker run -v /home/user/.ssh:/root/.ssh --privileged -p 5050:5050 -p 5051:5051 -p 5052:5052 -p 2181:2181 -p 8082:8081 -p 6123:6123 -p 8080:8080 -p 50090:50090 -p

我有三个安装了docker的节点。在master node中,我可以毫无问题地运行Mesos和马拉松。详情如下: 首先,我使用以下命令进入docker:

  docker run -v /home/user/.ssh:/root/.ssh --privileged -p 
   5050:5050 -p 5051:5051 -p 5052:5052 -p 2181:2181 -p 8082:8081 
   -p 6123:6123 -p 8080:8080 -p 50090:50090 -p 50070:50070 -p 
   9000:9000 -p 2888:2888 -p 3888:3888 -p 4041:4040 -p 7077:7077 
   -p 52222:22 -e WEAVE_CIDR=10.32.0.2/12 
   -e MESOS_EXECUTOR_REGISTRATION_TIMEOUT=5mins 
   -e LIBPROCESS_IP=10.32.0.2 
   -e MESOS_RESOURCES=ports*:[11000-11999] 
   -ti hadoop_marathon_mesos_flink_2 /bin/bash
然后我为Zookeeper和Mesos运行以下命令:

 /home/zookeeper-3.4.14/bin/zkServer.sh restart

 /home/mesos-1.7.2/build/bin/mesos-master.sh --ip=10.32.0.1 
   --hostname=10.32.0.1 --roles=marathon,flink --quorum=1 
   --work_dir=/var/run/mesos --log_dir=/var/log/mesos
跑完Mesos后,我打开另一个终点站跑马拉松:

  docker run exec -it container-id /bin/bash
然后我跑马拉松,没有任何问题:

  /home/marathon-1.7.189-48bfd6000/bin/marathon 
  --master 10.32.0.1:5050 --zk zk://10.32.0.1:2181/marathon 
  --hostname 10.32.0.1 --webui_url 10.32.0.1:8080 
  --logging_level debug
为了测试Marathon,我编写了一个简单的scipt来打印字符串,它在docker容器中运行良好。但是,当我创建一个新的应用程序来运行脚本时,由于以下错误,它不会运行:

I0428 05:32:09.167528 5115 exec.cpp:162]版本:1.7.2

I0428 05:32:09.177440 5117执行人cpp:236]在代理人984595ae-e811-48fb-a9f5-ca6128e1cc1a-S0上注册的执行人

I0428 05:32:09.179848 5120执行人。cpp:188]收到订阅事件

I0428 05:32:09.180785 5120执行人。cpp:192]于10.32.0.3签署的执行人

I0428 05:32:09.180997 5120 executor.cpp:188]收到启动事件

I0428 05:32:09.182319 5120执行者。cpp:697]开始任务测试。f76ace45-6976-11e9-928f-ce235caa831e

I0428 05:32:09.196890 5120执行器。cpp:712]在5124处分叉命令 sh:1:/home/test.sh:未找到

I0428 05:32:09.369120 5119 executor.cpp:1013]命令已退出,状态为127(pid:5124)

I0428 05:32:10.376525 5123进程。cpp:927]已停止套接字接受循环

这意味着Marathon不知道docker容器中的应用程序。你能指导我如何解决这个问题吗? 我还在Marathon中设置了Docker映像,但任务再次失败,Mesos UI在沙盒中没有任何登录

请帮帮我


提前谢谢。

问题已解决。我必须将应用程序放在从属节点中的docker容器上。我这样做了,应用程序在Marathon中运行。

问题解决了。我必须将应用程序放在从属节点中的docker容器上。我这样做了,应用程序在Marathon中运行