legacy-knowledge-base
公開されました Jul. 2, 2025

Liferay Workspace で起動前スクリプトを配置する場所

written-by

Jorge García Jiménez

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

Docker イメージをビルドしているので、タスク「gradle buildDockerImage」を実行してイメージをビルドします。

以下の点についてお知らせください。

ワークスペースの「起動前」スクリプトはどこに配置する必要がありますか?

共通または特定の環境フォルダーにフォルダーを作成しようとしましたが、スクリプトが /usr/local/liferay/pre-startup に表示されません

Environment

  • Liferay ワークスペースを備えた Liferay 7.3

解決策

以下のルート内にスクリプトを配置する必要があります。

 ${LR_WORKSPACE_HOME}/configs/docker/scripts

サンプルスクリプト

Selection_069.png

docker イメージの実行時に実行される

Selection_070.png

ただし、ワークスペースに配置されたスクリプト:

 ${LR_WORKSPACE_HOME}/configs/docker/scripts

イメージをビルドする前に、次の場所にコピーされます。

 /home/liferay/configs/local/scripts 

イメージの作成時、およびイメージのコピー先のコンテナーの起動時に

 /mnt/liferay/scripts 

ログに見られるように:

[LIFERAY] Copying /home/liferay/configs/local/scripts scripts files:

/home/liferay/configs/local/scripts
└── my_custom_script.sh

[LIFERAY] ... into /mnt/liferay/scripts

ただし、これらのスクリプトは、公式ドキュメント 記載されているように、Liferay DXP が開始する前にのみ実行されます

[LIFERAY] Executing scripts in /mnt/liferay/scripts:

[LIFERAY] Executing my_custom_script.sh.
[CUSTOM SCRIPT] Hello, I'm a custom script copied during the creation of the image!

したがって、それらは起動前スクリプトの役割を果たしますが、実際には /usr/local/liferay/pre-startup フォルダーにはコピーされません。 これを実現するには、ローカル フォルダーをバインド マウントし、そこに各フェーズの必要なスクリプトを配置して、ドキュメント hereに従ってコンテナーを起動する必要があります。

追加情報

did-this-article-resolve-your-issue

legacy-knowledge-base