在Cloud Foundry中,有没有办法知道哪些buildpack(和buildpack的哪个版本)上演了一个给定的应用程序?如何知道哪些buildpack上演了Cloud Foundry中我的应用程序?
我想一定有办法,因为我可以在Bluemix Web控制台上看到它,但我无法从cf cli中找到相同的信息(尝试使用cf apps
和cf app APPNAME
)。
在Cloud Foundry中,有没有办法知道哪些buildpack(和buildpack的哪个版本)上演了一个给定的应用程序?如何知道哪些buildpack上演了Cloud Foundry中我的应用程序?
我想一定有办法,因为我可以在Bluemix Web控制台上看到它,但我无法从cf cli中找到相同的信息(尝试使用cf apps
和cf app APPNAME
)。
cf curl /v2/apps
查找您的应用程序并查看其中的数据块。如果你想获得看上你可以在你的应用程序名称过滤像这样cf curl /v2/apps?q=name:<appname>
在Bluemix Web控制台,在“文件和日志”,你应该有一个名为staging_info.yml文件。该文件的内容会告诉您检测到的构建包。这里有一个例子:
buildpack_path:在/ var/VCAP /数据/ dea_next/admin_buildpacks/5186873d-27b5-4033-ba97-a2db19d387a2_2dcb9b37027cd39d9742223e2690f16f079a0792 detected_buildpack:自由的Java(TM)(WAR,自由,2015.4 .0_0,ibmjdk-1.7.1_sr2fp11ifx-20150312, ENV) START_COMMAND:.liberty/initial_startup.rb
做@jpapejr建议什么的另一种方法是设置'CF_TRACE'环境变量'真',然后运行'CF应用'(如Linux或OSX做'CF_TRACE =真正的CF应用' )。这比'cf curl'查询要容易一些。使用这两种方法之一,请在JSON中查找名为'detected_buildpack'的字段。这个值是从buildpack的'detect'脚本返回的字符串,并且完全依赖于buildpack。该值可能包含buildpack名称,版本和其他信息,或者可能只是说“Ruby”。 –