このページは英語版を翻訳したものです。UI のラベルとメニュー名は英語で表記しています。内容が異なる場合は、英語版が優先されます。
Liferay Self-Hosted (Docker) へのインストール
Liferay と PostgreSQL はコンテナーで動作し、フォーラムのマイクロサービスは Liferay のネットワークを共有する 3 つ目のコンテナーで動作します。そのため、サーバーの場合と同様に、Liferay は localhost:58081 でマイクロサービスに接続します。フォーラムの zip は、サーバーの場合と同じ順序で、実行中の Liferay コンテナーにコピーします。これらの手順は liferay/dxp:2026.q1.4-lts イメージでテストされています。
Docker が必要です。コマンドは、最新リリースからダウンロードしたリリースの 3 つの zip があるフォルダーから実行してください。
- 手順 1: Liferay の修正を追加する
- 手順 2: PostgreSQL と Liferay を起動する
- 手順 3: batch をデプロイする
- 手順 4: マイクロサービスの zip をデプロイする
- 手順 5: マイクロサービスを起動する
- 手順 6: メール通知を設定する
- 手順 7: フォーラムサイトを作成する
- 日常の運用
- 関連情報
手順 1: Liferay の修正を追加する
zip と同じ場所に patching という名前のフォルダーを作成し、Liferay サポートから入手した hotfix をそこに置きます。Liferay は、コンテナーが起動するたびにその hotfix をインストールします。hotfix を使用しない場合は、フォルダーを空のままにして、回避策を使用してください。
手順 2: PostgreSQL と Liferay を起動する
-
コンテナー用のネットワークを作成し、PostgreSQL を起動します。ここと次のコマンドで、
change-meをご自身のパスワードに置き換えてください。docker network create forums docker run -d --name forums-postgres --network forums --restart unless-stopped \ -e POSTGRES_DB=lportal -e POSTGRES_USER=liferay -e POSTGRES_PASSWORD=change-me \ -v forums-postgres-data:/var/lib/postgresql/data \ postgres:16.15 -
Liferay を起動します。
forums-liferay-routesボリュームには、Liferay がマイクロサービス用に書き込む認証情報が保存されます。docker run -d --name forums-liferay --network forums -p 8080:8080 --restart unless-stopped \ -e LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_DRIVER_UPPERCASEC_LASS_UPPERCASEN_AME=org.postgresql.Driver \ -e LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_URL=jdbc:postgresql://forums-postgres:5432/lportal \ -e LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_USERNAME=liferay \ -e LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_PASSWORD=change-me \ -v forums-liferay-data:/opt/liferay/data \ -v forums-liferay-routes:/opt/liferay/routes \ -v "$PWD/patching:/mnt/liferay/patching" \ liferay/dxp:2026.q1.4-lts -
Liferay が起動するまで待ちます。
docker logs forums-liferayにServer startup inと表示されれば起動しています。これには数分かかります。起動後、Liferay はhttp://localhost:8080で利用できます。
手順 3: batch をデプロイする
-
batch を実行中のコンテナーにコピーします。
docker cp liferay-forums-batch.zip forums-liferay:/opt/liferay/osgi/client-extensions/ -
ログを追跡し、コピーした後に
Finished batch engine import taskを含む行が 5 行表示されるまで待ってから、Ctrl+C を押します。docker logs -f --since 2m forums-liferay | grep "Finished batch engine import task"
Liferay は起動中にもこの行をいくつかログに出力します。コピーした後の行だけを数え、5 つすべてが完了するまで先に進まないでください。
手順 4: マイクロサービスの zip をデプロイする
docker cp liferay-forums-etc-spring-boot.zip forums-liferay:/opt/liferay/osgi/client-extensions/
docker logs forums-liferay に STARTED liferayforumsetcspringboot と表示されるまで待ちます。
手順 5: マイクロサービスを起動する
-
zip に含まれる
Dockerfileから、マイクロサービスのイメージをビルドします。mkdir microservice unzip liferay-forums-etc-spring-boot.zip -d microservice docker build -t liferay-forums-microservice microservice -
Liferay のネットワークで、Liferay の認証情報のボリュームを使って起動します。
docker run -d --name forums-microservice --network container:forums-liferay --restart unless-stopped \ -v forums-liferay-routes:/opt/liferay/routes:ro \ -e LIFERAY_ROUTES_CLIENT_EXTENSION=/opt/liferay/routes/default/liferay-forums-etc-spring-boot \ -e LIFERAY_ROUTES_DXP=/opt/liferay/routes/default/dxp \ liferay-forums-microservice -
Liferay からマイクロサービスに接続できることを確認します。次のコマンドで
READYと出力されます。docker exec forums-liferay curl -s http://localhost:58081/ready
手順 6: メール通知を設定する
batch によって、仮の送信元アドレスを持つメールテンプレートが 2 つ作成されています。メンバーにメールが届く前に、実際のアドレスを設定し、docker restart forums-microservice でマイクロサービスを再起動してください。メール通知を参照してください。
手順 7: フォーラムサイトを作成する
フォーラムサイトの作成に進みます。
日常の運用
- Liferay のコンテナーを再起動した後は、 マイクロサービスのコンテナーも再起動してください。マイクロサービスは Liferay のネットワークを共有しているためです:
docker restart forums-microservice。 -
zip は Liferay のコンテナー内にあります。 設定やイメージを変更するためなどにコンテナーを削除して新しいコンテナーを起動すると、新しいコンテナーにはフォーラムの zip が 1 つもありません。手順 3 と手順 4 のとおり、batch をコピーしてから、マイクロサービスの zip をコピーしてください。その後、マイクロサービスのコンテナーを削除し、手順 5 の
docker runコマンドで再度起動します。マイクロサービスのコンテナーは古い Liferay コンテナーに結び付いているため、再起動では失敗します。docker rm -f forums-microservice - ログ:
docker logs forums-liferayとdocker logs forums-microserviceです。