Docker撰写Bluemix KeyError消息

在使用docker-compose在Bluemix中部署2个服务时出现错误:

Creating xxx ERROR: for xxx-service 'message' Traceback (most recent call last): File "bin/docker-compose", line 3, in <module> File "compose/cli/main.py", line 64, in main File "compose/cli/main.py", line 116, in perform_command File "compose/cli/main.py", line 876, in up File "compose/project.py", line 416, in up File "compose/parallel.py", line 66, in parallel_execute KeyError: 'message' Failed to execute script docker-compose 

我的docker-compose文件(完全在本地运行)是:

 yyy-service: image: yyy container_name: wp-docker hostname: wp-docker ports: - 8080:80 environment: WORDPRESS_DB_PASSWORD: whatever volumes: - "~/whatever/:/var/www/html/wp-content" links: - xxx-service xxx-service: image: xxx container_name: wp-mysql hostname: wp-mysql environment: MYSQL_ROOT_PASSWORD: whatever MYSQL_DATABASE: whatever MYSQL_USER: root MYSQL_PASSWORD: whatever volumes: - /var/data/whatever:/var/lib/mysql 

这个问题和这个问题非常相似,但除了尝试之外我没有看到任何解决scheme

 export COMPOSE_HTTP_TIMEOUT=300 

这并没有为我工作。

不幸的是,docker-compose吃了返回的实际错误信息,并给你一个有用的python脚本堆栈跟踪,没有任何信息的基本原因。

从您的撰写文件,我的猜测是这个问题是与您的卷。 您已经指定它将计算主机上的目录直接加载到容器中。 这在Bluemix中不起作用,而是需要指定卷是外部的(并先创build这些卷),然后指向它们。

例如,像这样的东西:

 version: '2' services: test: image: registry.ng.bluemix.net/ibmliberty volumes: - test:/tmp/data:rw volumes: test: external: true 

在这里你创build卷(在这种情况下,“testing”)首先像cf ic volume create test