コンテナのライフサイクルとAPI
高レベルでは、コンテナはLiferayがデプロイされた状態でTomcatを開始します。 ただし、さらに、コンテナエントリーポイントは、以下のユースケースを実行するためのAPIを提供します。
- スクリプトの呼び出し
- TomcatおよびLiferayの設定
- アーティファクトのデプロイ
- パッチのインストール
- パッチツールの更新
コンテナは、これらのユースケースをトリガーおよび構成するためのAPIを提供します。 ライフサイクルのさまざまなフェーズでユースケースを実行します。
ライフサイクル
環境でコンテナを作成した後、コンテナエントリーポイントはその環境で次のライフサイクルフェーズを実行します。
- 事前設定: TomcatおよびLiferayを設定する前に、ユーザー提供のスクリプトを実行します。
- 設定: TomcatでDXPを実行する準備をします。
- TomcatのJavaランタイム環境の設定 。
- ユーザが提供したファイル を Liferay Home にコピー。
- ユーザー提供のスクリプトの実行。
- ユーザー提供のアーティファクトのデプロイ。
- パッチツール をユーザー指定のバージョンで更新。
- ユーザー提供のパッチをインストール。
- 起動前: Tomcatを起動する前に、ユーザー提供のスクリプトを実行します。
- Tomcat起動: Catalinaスクリプトを使用してTomcatを起動します。
- シャットダウン後: Tomcatの停止後にユーザー提供のスクリプトを実行します。
API
コンテナエントリポイントは、次のコンテナフォルダでファイルをスキャンし、それらのファイルを使用して、コンテナ、Tomcat、Liferayを設定し、Liferayで動作します。
/mnt/liferay
/user/local/liferay/scripts
バインドマウント 、 volumes 、docker cp
など、さまざまな方法でこれらのコンテナフォルダにファイルを渡すことができます。 詳しくは コンテナへのファイルの提供 をご覧ください。
上記の主要なフォルダには、特定のアクション用に指定されたサブフォルダがあります。 次のセクションでは、サブフォルダ、それらのファイルで実行されるアクション、および関連するユースケースをライフサイクルの段階順に記述します。
次のライフサイクルの段階は、ユーザーが提供したファイルに作用します。
事前設定段階のAPI
ファイルのロケーション | 操作 | ユースケース |
---|---|---|
/usr/local/liferay/scripts/pre-configure | スクリプトをアルファベット順に実行する | 設定段階前のスクリプトの実行 |
設定段階のAPI
ファイルのロケーション | 操作 | ユースケース |
---|---|---|
/mnt/liferay/files | Liferay Home (/opt/liferay ) の下にあるフォルダにファイルをコピーする | コンテナの設定 Tomcatの設定 |
/mnt/liferay/scripts | スクリプトをアルファベット順に実行する | 構成中にスクリプトを実行 |
/mnt/liferay/deploy | Liferay起動時にアーティファクトを自動展開するために、 /mnt/liferay/deploy を /opt/ liferay/deploy にシンボリックリンクします。実行時、 /mnt/liferay/deploy 、 /opt/liferay/deploy 、またはいずれかのフォルダに取り付けられたフォルダにコピーされたアーティファクトを自動デプロイします。注:自動デプロイされたアーティファクトは、 /opt/liferay/osgi 下の適切なフォルダに移動されます。 | アプリやその他のアーティファクトをコンテナにインストールする |
/mnt/liferay/patching | パッチツールが提供されている場合は、それをインストールします。 提供されているパッチをインストールします。 | DockerでDXPにパッチを適用する |
起動前段階のAPI
ファイルのロケーション | 操作 | ユースケース |
---|---|---|
/usr/local/liferay/scripts/pre-startup | スクリプトをアルファベット順に実行する | Tomcatを開始する前にスクリプトを実行 |
シャットダウン後段階のAPI
ファイルのロケーション | 操作 | ユースケース |
---|---|---|
/usr/local/liferay/scripts/post-shutdown | スクリプトをアルファベット順に実行する | Tomcatをシャットダウンした後のスクリプトの実行 |
次のステップ
コンテナのライフサイクルとAPIについて学習できました。これで、コンテナにファイルを提供する最良の方法を決定できます。 また、上記の表に記載されているユースケースの実行を開始することもできます。 ここに記載されているユースケースは参考用です。