在bluemix中推送图像时清单无效的错误

我在我的Windows系统中本地创build了一个图像。 图像复制到自由服务器的Hello World应用程序的战争文件。 我能够在我的系统中本地生成和运行映像。 但是,我无法将应用程序推送到bluemix。

这是我的docker文件:

FROM registry.ng.bluemix.net/ibmliberty:latest COPY HelloWorldWeb.war /opt/ibm/wlp/usr/servers/defaultServer/dropins/ ENV LICENSE accept EXPOSE 9080 22 

这些命令是成功的:

 $ docker build -t libertytest1 c:/Microservices $ docker tag libertytest1 registry.ng.bluemix.net/my_ibm/libertytest1 $ docker run --rm -i -t libertytest1 

此命令失败,出现以下错误:

 $ docker push registry.ng.bluemix.net/my_ibm/libertytest1 The push refers to a repository [registry.ng.bluemix.net/my_ibm/libertytest1] 9f24cf425f1e: Pushed 5f70bf18a086: Pushed f5115b19b62d: Pushed d255f44e3bce: Pushed 3eb8d309e7a4: Pushed b9ca157916fa: Pushed 9d3eae113364: Pushed 8077bafd5c40: Pushed 86a4f2b11dd6: Pushed 58de70953d07: Pushed 3a497f2a043d: Pushed 612baa4f0341: Pushed 63f90ec2c29b: Pushed 54f3ce62fc73: Pushed 7c7cf479c321: Pushed manifest invalid: manifest invalid 

当我login到bluemix并检查我的容器时,我看不到这个容器。 请build议如何解决这个错误。

注意:我在war文件中添加了一个manifest.yml,但仍然是相同的错误。

在Docker 1.10中,他们对图像清单的生成方式进行了改变。

IBM Containers Registry运行的Dockerregistry版本不支持使用新格式构build的图像,因此您在尝试推送时会看到错误消息。

我们正在努力使用最新版本的Docker再次推动工作,但现在您需要执行以下操作之一:

  • 使用IBM Containers构build服务: cf ic build -t registry.ng.bluemix.net/my_ibm/libertytest1 c:/Microservices
  • 在您的机器上降级到Docker 1.9并像上面那样在本地运行您的命令。

编辑:问题现在已经解决。 您现在可以使用Docker 1.10推送图像。

大部分就像你正在运行老版本的Docker。

 manifest invalid: manifest invalid 

请升级docker客户端(至less到v1.8.1),再次尝试push ,你应该没事的推动图像。

我有与docker和cf ic的最新版本相同的问题我解决了它使用cf ic build命令直接在Bluemix上构build映像

 cf ic build -t [Bluemix registry URL] [path to your docker file] 
Interesting Posts