1.7. OpenShift 的 Dekorate 配置属性

下表中列出的属性设置 Dekorate 用来配置要部署到 OpenShift 的应用的值。Dekorate 使用这些属性中指定的值来填充为应用程序项目生成的 Deployment Configuration 和 application 资源文件。每个属性接受特定属性表中列出的数据类型值。如果没有为这些属性指定值,则某些属性有一个默认值,则 Dekorate 使用。您可以在应用程序项目的 application.properties 文件中设置这些属性。

表 1.1. OpenShift 的 Dekorate 应用属性

属性数据类型描述默认值(如果适用)

dekorate.openshift.part-of

字符串

应用程序所属组件集合的名称。此属性的值用于应用程序包含的其他 Kubernetes 资源的名称,如 Deployment 配置和服务。

如果没有为此属性指定值,则 Dekorate 将使用您在应用程序的 Maven 项目中所用 groupId 的名称作为默认值。

dekorate.openshift.name

字符串

应用程序的名称。此属性的值用于应用程序包含的其他 Kubernetes 资源的名称,如 Deployment 配置和服务。

如果没有为此属性指定值,则 Dekorate 将使用应用程序 Maven 项目的 artifactId 的名称作为默认值。

dekorate.openshift.version

字符串

应用程序的版本。此属性的值用于应用程序包含的所有 Kubernetes 资源的名称,如 Deployment 配置和服务。

如果没有为此属性指定值,则 Dekorate 将使用您在包含应用程序的 Maven 项目中指定的版本作为默认值。

dekorate.openshift.init-containers

Container[]

指定您要在应用程序中使用的 init 容器

 

dekorate.openshift.labels

Label[]

指定要添加到应用程序中的所有资源中的自定义标签

 

dekorate.openshift.annotations

Annotation[]

指定要添加到应用程序中的所有资源的自定义注解

 

dekorate.openshift.env-vars

Env[]

指定您要为应用程序创建的所有容器定义的环境变量

 

dekorate.openshift.working-dir

字符串

指定应用程序容器的工作目录

 

dekorate.openshift.command

String[]

指定您要在容器中使用的命令

 

dekorate.openshift.arguments

String[]

指定您要在容器中使用的自定义命令行参数

 

dekorate.openshift.replicas

int

指定在部署应用程序时您要创建的应用程序容器副本数

1

dekorate.openshift.service-account

字符串

指定应用程序使用的 Service 帐户的名称

 

dekorate.openshift.host

字符串

运行应用程序的主机节点的名称

 

dekorate.openshift.ports

port[]

您提供的服务所公开的网络端口

 

dekorate.openshift.service-type

ServiceType

为应用程序生成的服务类型

ClusterIP

dekorate.openshift.pvc-volumes

PersistentVolumeClaimVolume[]

要附加到应用程序所有容器的持久性卷声明

 

dekorate.openshift.secret-volumes

SecretVolume[]

要附加到应用程序所有容器的 secret 卷

 

dekorate.openshift.config-map-volumes

ConfigMapVolume[]

要附加到应用程序所有容器的 ConfigMap 卷

 

dekorate.openshift.git-repo-volumes

GitRepoVolume[]

您要附加到应用程序所有容器的 Git 存储库卷

 

dekorate.openshift.aws-elastic-block-store-volumes

AwsElasticBlockStoreVolume[]

您要附加到应用程序所有容器的 AWS Elastic Block Store 卷

 

dekorate.openshift.azure-disk-volumes

AzureDiskVolume[]

要附加到应用程序所有容器的 Microsoft Azure 磁盘卷

 

dekorate.openshift.azure-file-volumes

AzureFileVolume[]

您要附加到应用程序所有容器的 Azure 文件卷

 

dekorate.openshift.mounts

Mount[]

将您要附加到应用程序的所有容器挂载

 

dekorate.openshift.image-pull-policy

ImagePullPolicy

指定部署应用程序时希望的镜像拉取策略

IfNotPresent

dekorate.openshift.image-pull-secrets

String[]

指定部署应用程序时要使用的镜像 pull secret 策略

 

dekorate.openshift.liveness-probe

probe

为您的应用程序容器设置存活度探测

 

dekorate.openshift.readiness-probe

probe

为您的应用程序容器设置就绪度探测

 

dekorate.openshift.request-resources

ResourceRequirements

指定应用程序容器需要的资源量

 

dekorate.openshift.limit-resources

ResourceRequirements

为应用程序容器设置资源限值

 

dekorate.openshift.sidecars

Container[]

指定您要部署为 sidecar 的容器

 

dekorate.openshift.expose

布尔值

设置是否在部署后为应用程序公开路由

false

dekorate.openshift.headless

布尔值

设置您是否希望生成的服务执行无头

false

dekorate.openshift.auto-deploy-enabled

布尔值

设置应用程序是否在生成部署 hook 时自动部署。在应用程序上设置此属性需要您在 application.properties 文件中硬编码其值。如果要避免硬编码其值,请不要设置此属性。使用 Maven 部署应用程序时使用 -Ddekorate.deploy=true 选项

false

dekorate.openshift.deployment-kind

字符串

要使用的部署资源的种类。支持的值包括 DeploymentConfigDeploymentStatefulSetJob、Job 和 CronJob 默认为第一个。

DeploymentConfig