OS環境変数を使用したLiferay DXPの構成

この記事では、環境変数を使用してLiferay DXP 7.0内でポータルプロパティを構成し、より柔軟でクラウドネイティブなアプローチを実現する方法について説明します。

環境変数を使用してDXP 7.0を構成すると、環境固有のポータルプロパティを設定する別のオプションが提供されます。 このオプションは通常、Dockerコンテナーなどのコンテナーベースの環境で作業するときに使用されます。

目次

  1. 必要条件
  2. 環境変数
  3. Liferayポータルプロパティ
  4. 優先順位を上書き

解決

必要条件

DXP 7.0を使用している場合、プラットフォームにはDXP 7.0フィックスパック24がインストールされている必要があります。

環境変数

環境変数は、オペレーティングシステム(OS)内で構成されます。 つまり、環境変数の命名規則もOSによって決定されます。

環境変数名を適切に作成する方法に関する一般的なガイドラインは次のとおりです。

  • 名前は、大文字、数字、およびアンダースコアを使用して定義する必要があります。
  • 名前の先頭を数字にすることはできません。

たとえば、一般的に使用される一般的なJava環境変数: JAVA_HOME

Liferayポータルプロパティ

環境変数を使用する場合、一般的な命名規則に従う必要があります。 ただし、Liferayポータルのプロパティは、小文字、ピリオド、角かっこなど、一般的に許可されていない文字で構成できます。 Liferayポータルプロパティの環境変数を使用するには、次の命名規則を使用します。これは、上記の一般的な命名規則の要件も満たしています。

Liferay命名規則(LNC)

  • 名前はプレフィックス LIFERAY_始まる必要があります
  • 名前はデフォルトで小文字に変換されます。
  • DXP 7.0によって提供される定数名を使用するか、Unicodeコードポイントを使用することにより、一般的に許可されていない文字を表すために特別なエンコーディングを使用できます。

LNC:DXP 7.0での定数名の使用

特別なエンコーディングに定数名を使用するのが一般的なオプションです。 定数名を使用すると、大文字、ピリオド、角かっこなどの一般的な文字を使用できます。 使用可能な定数名のリストは CharPool.java

Liferayで定数名を使用するには、環境変数名についても以下のガイドラインに従う必要があります。

  • 定数名は大文字で宣言する必要があります。
  • 定数名に '_'文字がある場合は、それらを削除する必要があります。
  • 定数名は、 '_'のラップされたペアを使用して宣言する必要があります。

例1:単純なポータルプロパティ

  • ポータルプロパティ:setup.wizard.enabled = false
  • 環境変数:LIFERAY_SETUP_PERIOD_WIZARD_PERIOD_ENABLED = true

使い方:

  1. この名前は、「一般的な命名規則」セクションで言及されているガイドラインを満たしています。
  2. 名前は次の接頭辞で始まります: LIFERAY_
  3. 定数名PERIODは次のように宣言されて使用されます: _PERIOD_

例2:複雑なポータルプロパティ

  • ポータルプロパティ:setup.database.driverClassName[mysql]= com.mysql.jdbc.Driver
  • 環境変数:LIFERAY_SETUP_PERIOD_DATABASE_PERIOD_DRIVER_UPPERCASEC_LASS_UPPERCASEN_AME_OPENBRACKET_MYSQL_CLOSEBRACKET_ = com.mysql.jdbc.Driver

使い方:

  1. この名前は、 一般的な命名規則 セクションで言及されているガイドラインを満たしています。
  2. 名前は次の接頭辞で始まります: LIFERAY_
  3. 定数名PERIODは次のように宣言されて使用されます: _PERIOD_
  4. 部分 driverClassNameには、大文字が含まれます。
    1. 定数名 UPPER_CASE_C は、次のように宣言されて使用されます: _UPPERCASEC_
    2. 定数名 UPPER_CASE_N は次のように宣言されて使用されます: _UPPERCASEN_

  5. 部分 [mysql]には括弧が含まれます。

    1. 定数名 OPEN_BRACKET は次のように宣言されて使用されます: _OPENBRACKET_

    2. 定数名 CLOSE_BRACKET は、dを として宣言することによって使用されます_CLOSEBRACKET_

LNC:Unicodeコードポイントの使用

特別なエンコーディングにUnicodeコードポイント値を使用することはオプションですが、定数名オプションを使用するよりも読みにくくなります。 Unicodeコードポイント値の参照テーブルは、次の場所にあります Unicodeテーブル

Unicodeコードポイント値を使用するには、環境変数名に関する次のガイドラインにも従う必要があります。

  • コードポイントは10進数で表す必要があります。
  • コードポイントは、 '_'のラップされたペアを使用して宣言する必要があります。

例1:単純なポータルプロパティ

  • ポータルプロパティ:setup.wizard.enabled = false
  • 環境変数:LIFERAY_SETUP_46_WIZARD_46_ENABLED = true

使い方:

  1. この名前は、「一般的な命名規則」セクションで言及されているガイドラインを満たしています。
  2. 名前は次の接頭辞で始まります: LIFERAY_
  3. 「。」 Unicodeコードポイント '46'で表され、次のように宣言されています:_46_

例2:複雑なポータルプロパティ

  • ポータルプロパティ:setup.database.driverClassName[mysql]= com.mysql.jdbc.Driver
  • 環境変数:LIFERAY_SETUP_46_DATABASE_46_DRIVER_67_LASS_78_AME_91_MYSQL_93_ = com.mysql.jdbc.Driver

使い方:

  1. この名前は、「一般的な命名規則」セクションで言及されているガイドラインを満たしています。
  2. 名前は次の接頭辞で始まります: LIFERAY_
  3. 「。」 Unicodeコードポイント '46'で表され、次のように宣言されています: _46_

  4. 部分 driverClassNameには、大文字が含まれます。
    1. 大文字の「C」はUnicodeコードポイント「67」で表され、次のように宣言されています: _67_

    2. 大文字の「N」はUnicodeコードポイント「78」で表され、次のように宣言されています: _78_

  5. 部分 [mysql]には括弧が含まれます。

    1. '['はUnicodeコードポイント '91'で表され、次のように宣言されています: _91_

    2. ']'はUnicodeコードポイント '93'で表され、次のように宣言されています: _93_

優先順位を上書き

OS環境変数を介して構成されたプロパティは、portal-ext、setup-wizard、patched、およびdeveloperプロパティファイルで構成されたプロパティよりも優先されます。 ただし、 Configuration Control Panel メニューの System Settings セクションで設定した設定は、環境変数よりも優先されます。

追加情報

この機能は、ポータルプロパティを構成する場合にのみ使用できます。 .configファイル プロパティは、環境変数を介して変更できません。

Liferayポータルのプロパティを構成するためのこの追加オプションでは、Liferayサポート担当者と通信するときに、関連する環境変数も含めることをお勧めします。

関連リンク:JavaおよびAnt環境変数の設定

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています