【发布时间】:2015-09-01 10:49:33
【问题描述】:
我想创建一个 Docker Swarm 集群,运行一个弹性搜索实例、一个 MongoDB 实例和一个 grails 应用程序,每一个都在单独的机器上。我正在使用 Docker Machine 来设置我的 Docker Swarm 集群
swarm-01:
mongodb
mongodb_ambassadorswarm-02:
弹性搜索
elasticsearch_ambassadorswarm-03:
mongodb_ambassador
elasticsearch_ambassador
圣杯
我设置的最后一步,运行实际的 grails 应用程序,使用以下命令:
docker run -p 8080:8080 -d --name grails-master --volumes-from maven --link mongo:mongo-master --link es:es-master my-grails-image
因错误而失败:
来自守护进程的错误响应:无法找到满足所有要求的节点 依赖项:--volumes-from=maven --link=mongo:mongo-master --link=es:es-master
ambassador 容器和 maven 数据容器都运行在同一个节点上。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
74677dad09a7 svendowideit/ambassador "/bin/sh -c 'env | gr" 18 minutes ago Up 18 minutes 9200/tcp, 9300/tcp swarm-03/es
98b38c4fc575 svendowideit/ambassador "/bin/sh -c 'env | gr" 18 minutes ago Up 18 minutes 27107/tcp swarm-03/mongo
7d45fb82eacc debian:jessie "/bin/bash" 20 minutes ago swarm-03/maven
我无法让 Grails 应用程序在 Swarm 集群上运行;任何意见,将不胜感激。在一台机器上运行所有容器都可以,所以我想我在将 mongo 和 es 实例链接到 grails 应用程序时犯了一个错误。
顺便说一句,我在 OS X 上使用最新的 Docker Toolbox 安装。
【问题讨论】:
-
使用
docker ps -a
查找崩溃的grails 应用容器,然后检查其日志docker logs grails_app_container_id
。 -
一年过去了,这个问题还没有解决吗?
标签: docker docker-machine docker-swarm