バージョン4におけるDXP Cloudプロジェクトの変更¶
DXP Cloudスタックのバージョン3.xと4.xの間で、サービスのDockerイメージバージョンが定義されている場所、リポジトリの構造、 Jenkinsfiles
使用方法など、いくつかの変更が行われています。
内容:
Dockerイメージ定義の変更¶
DXP Cloudのバージョン4.xのサービス用Dockerイメージは、プロジェクトの gradle.properties
ファイルに定義されなくなりました。 これらは、各サービスの LCP.json
で定義されるようになりました。
DXP Cloud Stackバージョン4にアップグレードすると、すべてのサービスのDockerイメージバージョンが 3.xx
から 4.xx
に変更されます。 これらのイメージの変更は、DXP Cloudプロジェクトの構造と機能の方法に対する組織の変更に加えて行われます。
プロジェクト組織の変更¶
リポジトリの最大の変更点は、各サービスのファイルがリポジトリのルートにあるフォルダーに移動されたことです。 lcp
フォルダーが削除され、これらのサービスのパスに含まれなくなりました。 これらのフォルダー自体は、Liferayのワークスペース構造に類似するように再編成されています。
リポジトリのルートにあった他のいくつかのファイル( gradle.properties
、 build.gradle
、 settings.gradle
を含む)も、 liferay
サービスに移動されました。
Liferayサービスの変更¶
liferay
サービスフォルダーは、Liferayワークスペースの機能構造に従います。
liferay
サービス内のすべての構成は、プロジェクトのDXP Cloud環境に対応する環境固有の configs
ディレクトリに属します。 さらに、 ライセンス
フォルダーが削除されました。 代わりに、 デプロイ
フォルダーにライセンスを追加してください。
次の表は、 liferay
サービス設定の新しい設定をまとめたものです。
ファイル |
3.xでの場所 |
4.xでの場所 |
---|---|---|
デプロイするファイル |
lcp/liferay/deploy /{ENV}/ |
liferay/configs /{ENV}/ deploy / |
OSGi設定ファイル(.cfgまたは.config) |
lcp/liferay/config /{ENV}/ |
liferay/configs /{ENV}/ osgi/configs / |
その他の設定オーバーライド |
lcp/liferay/config /{ENV}/ |
liferay/configs /{ENV}/ |
カスタムシェルスクリプト |
lcp/liferay/script /{ENV}/ |
liferay/configs /{ENV}/ scripts / |
ホットフィックスとパッチツール |
lcp/liferay/hotfix /{ENV}/ |
liferay/configs /{ENV}/ patching / |
ライセンス |
lcp/liferay/license /{ENV}/ |
lcp/configs /{ENV}/ deploy / |
注釈
configs/{ENV}/ ディレクトリ内のファイルは、オーバーライドとして DXP Cloud の Liferay コンテナ内の LIFERAY_HOME
ディレクトリにコピーされます。
ホットフィックスを直接リポジトリにコミットするのではなく、Liferayサービスのデプロイ時に自動的に追加される新しいCIサービス環境変数が用意されています。 詳細については、 Installing Hotfixes with an Environment Variable を参照してください。
カスタムスクリプトの実行¶
liferay/configs /{ENV}/ scripts /
配置されたスクリプトは、rootユーザーではなく liferay
ユーザーとして実行されるようになりました。 スクリプトをルートとして実行する必要がある場合は、代わりにスクリプトを Jenkinsfile
に追加する必要があります。
検索サービスの変更¶
search
サービス内のすべての設定は、環境固有の configs
ディレクトリに属します。 search
サービス設定の新しい設定については、次の表を参照してください:
ファイル |
3.xでの場所 |
4.xでの場所 |
---|---|---|
Elasticsearch の設定 |
lcp/search/config /{ENV}/ |
search/configs /{ENV}/ config / |
カスタムシェルスクリプト |
lcp/search/script /{ENV}/ |
search/configs /{ENV}/ scripts / |
Elasticsearchライセンス(.json)ファイル |
lcp/search/license /{ENV}/ |
search/configs /{ENV}/ license / |
注釈
検索コンテナ内の onfigs/{ENV}/にあるファイルは、DXP Cloud の検索コンテナ内の
usr/shared/elasticsearch/にオーバーライドとしてコピーされます。 例えば、
search/configs/{ENV}/config/の設定、例えば
elasticsearch.ymlのような設定は
usr/shared/elasticsearch/config/` にコピーされ、既存のデフォルト値を上書きします。
Elasticsearchプラグイン¶
Elasticsearchプラグインを search
サービスにインストールできるようになりました。 インストールされているElasticsearchプラグインを表示するには、 search
サービス内のシェルを使用して、次のコマンドを実行します:
bin/elasticsearch-plugin list
イメージがデフォルトでインストールするプラグイン以外のElasticsearchプラグインを追加でインストールする場合は、 search
サービスの LCP_SERVICE_SEARCH_ES_PLUGINS
環境変数を、インストールするプラグイン名のカンマ区切りリストに設定できます。 これらは、サービスのデプロイ中にインストールされます。
CIサービスの変更¶
デフォルトのパイプラインが定義されたため、デフォルトの Jenkinsfile
はリポジトリで不要になりました。 任意の Jenkinsfile
は、リポジトリのルートではなく ci
フォルダに定義されるようになりました。
複数の Jenkinsfile
拡張ポイントが ci
フォルダ内で利用できるようになり、ビルド作成のさまざまな段階で手順を定義できるようになりました。
環境変数を使用したホットフィックスのインストール¶
大規模なホットフィックスをGitリポジトリに直接コミットする代わりに、CIのビルドプロセスを通じてホットフィックスをインストールできるように新しい環境変数が追加されました。 CIサービスがビルドプロセス中に自動的に適用することができるようにするために、ホットフィックスのコンマ区切りのリストを LCP_CI_LIFERAY_DXP_HOTFIXES_{ENV}
環境変数に追加します(DXP Cloudコンソールの [環境変数]
タブ、または、 ci
サービスの LCP.json
ファイルを介して)。
次の例では、 LCP.json
ファイルを使用してホットフィックスを定義しています:
"env": {
"LCP_CI_LIFERAY_DXP_HOTFIXES_COMMON": "liferay-hotfix-10-7210,liferay-hotfix-17-7210",
"LCP_CI_LIFERAY_DXP_HOTFIXES_DEV": "liferay-hotfix-15-7210,liferay-hotfix-33-7210",
}
ウェブサーバーサービスの変更¶
webserver
サービス内のすべての設定は、環境固有の configs
ディレクトリに属します。 さらに、静的コンテンツ用の deploy
フォルダーが削除されました。 代わりに、カスタムコンテンツを パブリック
フォルダーに追加します。
webserver
サービス設定の新しい設定については、次の表を参照してください:
ファイル |
3.xでの場所 |
4.xでの場所 |
---|---|---|
ウェブサーバー設定 |
lcp/webserver/config /{ENV}/ |
webserver/configs /{ENV}/conf.d/ |
カスタムスクリプト |
lcp/webserver/script /{ENV}/ |
webserver/configs /{ENV}/ scripts / |
静的コンテンツ |
lcp/webserver/deploy /{ENV}/ |
webserver/configs /{ENV}/ public / |
注釈
webserver/configs/{ENV}/イルは、DXP Cloudのウェブサーバコンテナ内の /etc/nginx/
にオーバーライドとしてコピーされます。 Files in /webserver/configs/{ENV}/public/
will be copied as overrides into var/www/html/
.
Webサーバー設定の上書き¶
liferay.conf
ファイルを webserver/configs /{ENV}/conf.d/
追加することにより、 webserver
サービスのルートの場所をカスタマイズできます。 これにより、 webserver
サービスイメージのコンテナで利用可能なデフォルトの liferay.conf
が上書きされます。 ルートの場所をカスタマイズするときに、DXP Cloud Consoleのシェルにアクセスして、デフォルトとして liferay.conf
ファイルを参照として表示します。
警告
ルートの場所を iferay.conf 以外のファイル名でカスタマイズしないでください。これにより、デフォルトの
liferay.conf`を上書きします。 そうでない場合は、両方のファイルがコンテナ内に一緒に存在していて、2つのルート位置が見つかってエラーになることがあります。
他のファイル名は、代わりにウェブサーバの追加の場所を定義するために使用されます。
また、 webserver/configs/{ENV}/
に nginx.conf
ファイルを追加することで、デフォルトの NGINX 設定を上書きすることもできます。 これを使用して、Webサーバーの動作をさらに定義できます。 詳細は、 公式のNGINXドキュメント を参照してください。
パブリックディレクトリの設定¶
カスタムの静的コンテンツを追加する場合は、これらのファイルを webserver/configs /{ENV}/ public /
ます。 DXP Cloudはこのパブリックフォルダーを探し、その中のすべてのファイルを / var/www/html
コピーします。
パブリックフォルダーを設定するには、 conf.d
フォルダー内に場所を追加する必要があります。 たとえば、 .html
ファイル( index.html
)を新しい webserver/configs /{ENV}/ public/static
フォルダーに追加するには、一意の .conf
構成ファイルを webserver/configsに追加します/{ENV}/conf.d
以下の内容:
location /static/ {
root /var/www/html;
}
バックアップサービスの変更¶
バックアップ
サービス内のすべての設定は、環境固有の コンフィグ
ディレクトリに属するようになりました。 これは主にカスタムSQLスクリプトに関係しています:
ファイル |
3.xでの場所 |
4.xでの場所 |
---|---|---|
カスタムSQLスクリプト |
lcp/backup/script /{ENV}/ |
backup/configs /{ENV}/ scripts / |
既知の制限事項¶
新しいスタックには、ローカル環境を立ち上げるためのdocker-composeファイルが含まれていません。 このため、ローカルテストにはDXPバンドルが必要です。
ローカル環境で変更事項をテストしてから、DXP Cloudに移行することができます。 詳細については、 Migrating from an On-Premises DXP Installation を参照してください。