Documentation

Liferay Dockerイメージの使用

Docker Hub ホスト Liferay DXPLiferay Portal Community Edition (CE) Linux 上の Tomcat にバンドルされたDockerイメージ。 Liferay Docker Hubページには、さまざまなリリースのイメージの詳細とタグが表示されます。

コンテナを使用するための基本は次のとおりです。

これらのコンテナは、標準のDockerコンテナであり、そのまま起動および停止できます。 次の例では、 Docker CLI(docker を使用していますが、任意のDockerコンテナツールを使用できます。

コンテナを初めて起動する

コンテナはポート 8080 リッスンし、すべてのDockerコンテナと同様に開始します。

  1. ホストポート(例: 8080)をコンテナの 8080 ポートにマップするコンテナ を実行します。

    docker run -it --name [some name] -p 8080:8080 liferay/dxp:7.4.13-u22
    

    注釈

    コンテナの命名はオプションですが、コンテナの管理が容易になります。

    コンテナが実行され、次のTomcatの起動完了メッセージを含むログメッセージが記録されます。

    INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [xx,xxx] milliseconds
    
  2. Liferay UIをhttps://localhost:8080 でブラウザで開きます。

    Liferayのランディングページです。

Liferayを使用する準備が整いました。

ログの表示

Liferayログメッセージとログファイルは、ライブで表示したり、ホストにコピーしたりできます。

ちなみに

[container]値は、 runコマンドで --name [some name]を介して入力した名前です。

Dockerログ コマンド

docker logs コマンドは、コンテナログメッセージを出力します。

コマンド

結果

docker logs [container]

現在のすべてのログメッセージを出力します

docker logs -f [container]

tail -f [file] のように、新しいログメッセージをストリーミングする

docker logs -t [container]

各ログメッセージにタイムスタンプを追加します

docker cp コマンド

以下のような docker cp コマンドを使用して、ホストマシンにログファイルをコピーできます。

docker cp [container]:/opt/liferay/logs/liferay.[timestamp].log .

コンテナの停止

コンテナを停止するには、2つの方法があります。

方法

利点:

欠点:

docker exec [container] /opt/liferay/tomcat/bin/shutdown.sh

Liferay、Tomcat、およびその他のアプリがリソースを解放できるようにします。 コンテナエントリポイントは、 シャットダウン後のスクリプト を実行します。

i 引数を指定して実行しているターミナルセッションで Ctrl-C を実行します。

注意:これは SIGINT または SIGKILL シグナルをアタッチされたコンテナに送信します。

コンテナを停止する最速の方法。

Liferay、Tomcat、およびコンテナエントリポイントは、リソースを解放せずにすぐに停止します。 エントリポイントの シャットダウン後フェーズ はスキップされます。 本番環境ではこの方法を使用しないでください

コンテナの再起動

コンテナは、すべてのDockerコンテナと同様に再起動できます。

docker start [container]

警告

コンテナが再起動すると、そのエントリーポイントが再度実行されます(「 Container Lifecycle and API 」を参照してください)。 エントリーポイントを介して実行している スクリプトが安全に再実行できることを確認してください。

これで、Liferayコンテナの開始、停止、監視の基本を理解できました。

次のステップ

コンテナのエントリーポイントが何をするのか知りたい、コンテナのAPIを知りたい場合は、 コンテナのライフサイクルとAPI を参照してください。 コンテナの使用を開始する場合は、次のいずれかの使用例を実行してください。