2.3. Dekorate を使用したアプリケーション設定のカスタマイズ

Dekorate を使用して、OpenShift でのデプロイメント用にアプリケーションの設定をカスタマイズします。

  • アプリケーションのソースのアノテーションで構成パラメーターを指定
  • application.properties ファイルでのプロパティーの設定

以下の例は、OpenShift へのデプロイ時に 2 つのレプリカで始まるようにアプリケーションを設定する方法を示しています。

前提条件

  • Spring Boot および Dekorate を使用するよう設定された Maven ベースの Java アプリケーションプロジェクト
  • Java JDK 8 または JDK 11 がインストールされている。
  • Maven がインストールされている。

手順

  1. Dekorate OpenShift Annotations モジュールを、アプリケーションの pom.xml ファイルの依存関係として追加します。

    <project>
      ...
      <dependencies>
         ...
        <dependency>
          <groupId>io.dekorate</groupId>
          <artifactId>openshift-spring-starter</artifactId>
        </dependency>
        ...
      </dependencies>
    ...
    <project>
  2. OpenShift へのデプロイ時に、アプリケーションが開始するデフォルトのレプリカ数を設定します。

    1. @OpenshiftApplication アノテーションをアプリケーションのメインソースファイルに追加し、レプリカ数を 2 に設定します。アプリケーションのビルドとデプロイ時に、実行中のメインのアプリケーションコンテナーの 2 つのレプリカで自動的に起動します。

      package org.acme;
      
      import io.dekorate.openshift.annotation.OpenshiftApplication;
      
      // include the parameter for the number of replicas to
      @OpenshiftApplication(replicas=2)
      @SpringBootApplication
      public class Application {
      }
    2. または、アプリケーションの application.properties ファイルに dekorate.openshift.replicas=2 プロパティーを設定します。

      /src/main/resources/application.properties

      dekorate.openshift.replicas=2

  3. アプリケーションをパッケージ化します。

    mvn clean package
  4. target/classes/META-INF/dekorate に移動し、Dekorate が生成したマニフェストを表示します。デプロイメント設定 YAML テンプレートのレプリカ数は 2 に設定されます。

    ...
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: acme
    ...