我尝试使用静态文件将更新部署到简单的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
我该如何解决这个问题?
答案 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