由于不支持的堆栈,静态buildpack部署现在失败

时间:2015-06-25 17:53:39

标签: cloudfoundry ibm-cloud

我尝试使用静态文件将更新部署到简单的HTML应用程序。使用static buildpack,我之前部署了应用程序,没有任何问题。

推送应用程序更新,命令失败,并显示以下消息:

----> Downloaded app package (4.0K)
Cloning into '/tmp/buildpacks/staticfile-buildpack'...
Submodule 'compile-extensions' (https://github.com/cloudfoundry-incubator/compile-extensions.git) registered for path 'compile-extensions'

FAILED
Server error, status code: 400, error code: 170004, message: App staging failed in the buildpack compile phase

查看应用程序的日志,由于与堆栈不兼容,平台无法暂存。

ERR Cloning into '/tmp/buildpacks/staticfile-buildpack'...
OUT Submodule 'compile-extensions' (https://github.com/cloudfoundry-incubator/compile-extensions.git) registered for path 'compile-extensions'
ERR Cloning into 'compile-extensions'...
OUT Submodule path 'compile-extensions': checked out '1f260464c156bddfb654adb14298344797d030a1'
ERR It looks like you're deploying on a stack that's not supported by this buildpack.
ERR That could be because you're using a recent buildpack release on a deprecated stack.
ERR If you're using the buildpack installed by your CF admin, please let your admin know you saw this error message.
ERR If you at one point specified a buildpack that's at git URL, please make sure you're pointed at a version that supports this stack.
OUT Staging failed: Buildpack compilation step failed
ERR encountered error: App staging failed in the buildpack compile phase

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:9)

Cloud Foundry recently added support for a new stack, cflinuxfs2, based upon Ubuntu 14.04. IBM Bluemix still supports the old lucid64 build stack, which appears to be chosen by default if a stack isn't specified on the command line.

Looking at the "Static Buildpack" manifest, the old stack isn't supported.

cf_stacks:
    - cflinuxfs2

You can explicitly set the application stack during deploying using the '-s' command-line parameter.

    cf push -b https://github.com/cloudfoundry/staticfile-buildpack.git -s cflinuxfs2

Using the 'cflinuxfs2' will fix the issue.

答案 1 :(得分:2)

对于在bluemix上遇到此问题的其他人,我实际上无法在外部bluemix上使用cflinuxfs堆栈,但使用cflinuxfs2推送似乎可以正常工作

cf push -b https://github.com/cloudfoundry/staticfile-buildpack.git -s cflinuxfs2

编辑:在我使用的api端点上运行此命令我得到了以下输出,因此我必须使用cflinuxfs2:

> cf stacks
name         description
lucid64      Ubuntu 10.04
seDEA        private
cflinuxfs2   Ubuntu 14.04.2 trusty

另外:https://developer.ibm.com/answers/questions/198303/cloudfoundry-static-buildpack-not-compatible.html