了解 manifest.yml pivotal cloud foundry 中的以下环境条目

Understanding the following environment entry in manifest.yml pivotal cloud foundry

我有这个manifest.yml:

applications:
- name: xx
  buildpack: java-bp480-v2
  instances: 2
  memory: 2G
  path: webapp/build/libs/trid.war
  services:
   - xxservice
   - xxservice
   - xxcktbrkrcnfgsvc
   - xxappdynamics
   - autoscaler-xx
env:
   spring_profiles_active: cloud
   swagger_active: false
   JAVA_OPTS: -Dspring.profiles.active=cloud -Xmx1G -Xms1G -XX:NewRatio=1 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps

env 会做什么?
如果 spring 配置文件活动是云,它会创建三个环境变量还是将 JAVA_OPTS 附加到启动命令?

What will env do?.

env 块将指示 cf cli 代表您创建环境变量。条目采用 variable_name: variable_value 的形式。从您的示例中,您最终会得到一个名为 spring_profiles_active 且值为 cloud 的变量。加上你定义的另外两个。

JAVA_OPTS 是 Java buildpack 的特殊环境变量。无论您在 JAVA_OPTS 中输入什么,都将包含在您的应用程序的启动命令中。这是向 JVM 添加额外参数、系统属性和配置标志的简单方法。

请注意,至少在上面的示例中,env: 块上的间距是错误的. It's all the way to the left, but the env:should be indented two spaces. Then each env variable defined under theenv:` 块应该再缩进两个空格一共四个空格。 YAML 对空格和缩进非常挑剔。如有疑问,请使用 YAML 验证器确认您的 YAML 是否有效。