Using Liferay Docker Images
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

コンテナの設定

Liferayインストールで構成可能なものはすべて、Liferay Dockerコンテナで構成できます。

設定する最も一般的なものは次のとおりです。

ここでは、コンテナにファイルを提供する構成ユースケースを バインド マウントを使用して説明します。 ボリューム を使用することもできます。また、場合によっては docker cp コマンドを使用することもできます。 詳細については、「 コンテナへのファイルの提供 」を参照してください。

JVMオプション

TomcatのJVMオプションは、追加または置換できます。

JVMオプションをCATALINA_OPTSに追加する

JVM オプションは 、コンテナを作成する際に LIFERAY_JVM_OPTS 環境変数に指定することにより、Tomcat の CATALINA_OPTS 変数に追加できます。

docker run -it -m 8g -p 8080:8080 -e LIFERAY_JVM_OPTS=[value\ with\ space] liferay/dxp:[tag]
警告

LIFERAY_JVM_OPTS 値では、スペース文字をエスケープするためにバックスラッシュを使用します。 引用符は使用しないでください。

コンテナは Tomcat の CATALINA_OPTS に追加された LIFERAY_JVM_OPTS で実行されます。

setenv.shファイルの置き換え

JVMオプションを設定する別の方法は、Tomcatの setenv.sh スクリプトを上書きすることが含まれます。 setenv.sh スクリプトを素早く作成する方法は、Liferayコンテナからコピーすることです。 スクリプトのコピーを変更して新しいコンテナで使用する方法は次のとおりです。

  1. 既存のLiferayコンテナがある場合は、起動します。 それ以外の場合は、新しいものを実行します。

    docker run -it --name tmp-dxp -p 8080:8080 liferay/dxp:[tag]
    
  2. setenv.sh ファイルをコンテナからコピーします。

    docker cp tmp-dxp:/opt/liferay/tomcat/bin/setenv.sh .
    
  3. コンテナを停止します

  4. setenv.sh のコピーで JVM オプションを設定します。

  5. files/tomcat/bin パスを作成するために、ホストフォルダとサブフォルダを作成します。

    mkdir -p [host folder]/files/tomcat/bin
    cp setenv.sh [host folder]/files/tomcat/bin
    
  6. -v オプションを使用してホストフォルダにバインドマウントする新しいコンテナを実行します。

    docker run -it -m 8g -p 8080:8080 -v [host folder path]:/mnt/liferay liferay/dxp:[tag]
    

コンテナは setenv.sh スクリプトの JVM オプションを使用します。

コンテナの /mnt/liferay フォルダへのバインドマウントの詳細については、 コンテナへのファイルの提供 を参照してください。

Liferay コンテナの起動と操作の詳細については、 Liferay Docker イメージの使用 を参照してください。

ポータルプロパティ

コンテナ ポータル プロパティ は、次の 2 つの方法で上書きできます。

Liferay環境変数の使用

ポータル プロパティには Env 変数があります。 Env 変数は、Liferay Docker コンテナのポータル プロパティを上書きする Docker 環境変数 です。

  1. ポータル プロパティ のオンライン説明で、上書きするプロパティを見つけます。

  2. プロパティ説明のすぐ下に表示される Env 変数名をコピーします。 たとえば、 jdbc.default.jndi.name ポータル プロパティの Env 変数は次のとおりです。

    Env: LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_JNDI_PERIOD_NAME
    
  3. コンテナを作成し、 -e オプションを使用して、パターン -e VARIABLE_A=value -e VARIABLE_B=value ...に従って Env 変数の割り当てを渡します。。 例えば、

    docker run -it -m 8g -p 8080:8080 -e LIFERAY_JDBC_PERIOD_DEFAULT_PERIOD_JNDI_PERIOD_NAME=jdbc/MyPool liferay/dxp:[tag]
    
    警告

    Env 変数値では、スペース文字をエスケープするためにバックスラッシュを使用します。 引用符は使用しないでください。

    データベース環境変数の例については、 データベース テンプレート を参照してください。

    コンテナの起動と操作の詳細については、 Liferay Docker イメージの使用 を参照してください。

プロパティは、コントロール パネルの 構成サーバー管理プロパティポータル プロパティで確認できます。

ポータルプロパティファイルの使用

コンテナのポータルプロパティは、 portal-ext.properties ファイルを使用して上書きできます。 この例では、 バインドマウントを使用します。

  1. ホストフォルダと files というサブフォルダを作成します。

    mkdir -p [host folder]/files
    
  2. 作成した files サブフォルダ内の portal-ext.properties ファイルにプロパティの上書きを追加します。 例えば、

    echo "jdbc.default.jndi.name=jdbc/MyPool" >> [host folder]/files/portal-ext.properties
    
  3. portal-ext.properties ファイルのフォルダをコンテナの /mnt/liferay/files フォルダにバインドマウントを含むマッピングするコンテナを作成します。 この例の portal-ext.propertiesfilesというフォルダ内にあるため、コンテナの /mnt/liferay フォルダに バインドマウント できます。

    docker run -it -m 8g -p 8080:8080 -v [host folder path]:/mnt/liferay liferay/dxp:[tag]
    

プロパティは、コントロール パネルの 構成サーバー管理プロパティポータル プロパティで確認できます。

画像定義の環境変数

Liferayイメージは、いくつかの環境変数を定義します。 変数の中には、 Liferay ホーム パスや Tomcat をデバッグ モードで起動するオプションなど、内部的なものを構成するものもあります。 その他の変数は ポータルプロパティに設定されます。 以下は、ポータルプロパティを設定する画像定義の環境変数です。

LIFERAY_MODULE_PERIOD_FRAMEWORK_PERIOD_PROPERTIES_PERIOD_OSGI_PERIOD_CONSOLE=0.0.0.0:11311
LIFERAY_SETUP_PERIOD_WIZARD_PERIOD_ADD_PERIOD_SAMPLE_PERIOD_DATA=false
LIFERAY_SETUP_PERIOD_WIZARD_PERIOD_ENABLED=false
LIFERAY_TERMS_PERIOD_OF_PERIOD_USE_PERIOD_REQUIRED=false
LIFERAY_USERS_PERIOD_REMINDER_PERIOD_QUERIES_PERIOD_ENABLED=false

ポータルプロパティに対応する環境変数は、ポータルプロパティファイルの設定よりも優先されます。

上記を含むすべてのDocker環境変数は不変です。 環境変数を設定する場合、またはLiferayのイメージ定義の環境変数に依存する場合は、必要な値があることを確認してください。

環境変数オプション

イメージ定義の環境変数を操作するためのオプションは、次の通りです。

  1. 画像で定義されたデフォルトを使用します。 自動的に設定されます。

  2. コンテナの実行時に環境変数を設定して、デフォルト値を上書きします。 たとえば、 docker run -e [変数]=[値] ...

  3. 割り当てなしで宣言することにより、環境変数を無効にします (つまり、 = の文字がない場合)。 形式は次のとおりです e [varable]

    イメージ定義の Portal 環境変数を無効にすると、コンテナ起動時の Portal プロパティ ファイル で必要な値を柔軟に指定できます。 例えば、

    docker run -e [varable] -v [host folder path]:/mnt/liferay ...
    

例:画像定義のポータルプロパティ環境変数の操作

次の画像で定義されているポータルプロパティ環境変数は、ユーザーが使用条件に同意する必要がないことを宣言しています。

LIFERAY_TERMS_PERIOD_OF_PERIOD_USE_PERIOD_REQUIRED=false

これを無効にし、ポータルプロパティファイルを使用して操作する方法は次のとおりです。

  1. 環境変数を無効にし、ポータルプロパティファイルのバインドマウントを設定します。

    docker run -e LIFERAY_TERMS_PERIOD_OF_PERIOD_USE_PERIOD_REQUIRED -v $(pwd):/mnt/liferay ...
    

    利用規約の要件は、ポータルプロパティに基づいています。 デフォルトのポータル プロパティ設定 ( LIFERAY_TERMS_PERIOD_OF_PERIOD_USE_PERIOD_REQUIREDを検索) には、利用規約が必要です。

    terms.of.use.required=true
    
  2. バインドマウントパスにある portal-ext.properties ファイルに必要な設定を指定します。 ポータル プロパティ ファイルの使用については を参照してください

    echo "terms.of.use.required=false" >> ./files/portal-ext.properties
    
  3. コンテナを再起動します。

コンテナはプロパティ設定を使用します。

システムプロパティ

システム プロパティ は、 system-ext.properties ファイルを使用して上書きできます。 この例では、 バインドマウントを使用します。

  1. [host folder]/files/tomcat/webapps/ROOT/WEB-INF/classes を作成します。

    mkdir -p [host folder]/files/tomcat/webapps/ROOT/WEB-INF/classes
    
  2. [host folder]/files/tomcat/webapps/ROOT/WEB-INF/classes フォルダ内の system-ext.properties ファイルにプロパティの上書きを追加します。 例えば、

    echo "net.sf.ehcache.skipUpdateCheck=false" >> [host folder]/files/tomcat/webapps/ROOT/WEB-INF/classes/system-ext.properties
    
  3. -v オプションを使用してホストフォルダにバインドマウントする新しいコンテナを実行します。

    docker run -it -m 8g -p 8080:8080 -v [host folder path]:/mnt/liferay liferay/dxp:[tag]
    

    コンテナの /mnt/liferay フォルダへのバインドマウントの詳細については、 コンテナへのファイルの提供 を参照してください。

プロパティは、コントロール パネルの 構成サーバー管理プロパティシステム プロパティで確認できます。

システム設定

Liferay システム設定は、 コントロールパネル で、または 構成ファイル (.config ファイル) をコンテナに提供することで構成できます。 最初から .config ファイルを作成するか、UIからコンポーネント設定値をエクスポートすることができます。

次のいずれかの方法を使用して、システム設定を変更します。

新しいコンテナへの構成の適用

まだコンテナを作成していない場合は、次の手順に従って、 .config ファイルを バインド マウントを使用して新しいコンテナに提供します。

  1. [host folder]/files/osgi/configs を作成するために、ホストフォルダとサブフォルダを作成します。

    mkdir -p [host folder]/files/osgi/configs
    
  2. .config ファイルをホストフォルダの files/osgi/configs サブフォルダにコピーします。 例:

    cp ~/*.config [host folder path]/files/osgi/configs
    
  3. -v オプションを使用してホストフォルダにバインドマウントするコンテナを実行します。

    docker run -it -m 8g -p 8080:8080 -v [host folder path]:/mnt/liferay liferay/dxp:[tag]
    

    コンテナの /mnt/liferay フォルダへのバインドマウントの詳細については、 コンテナへのファイルの提供 を参照してください。

システムコンポーネントの構成は、そのコンポーネントの画面のコントロールパネルで、[設定][システム設定]に表示されます。

実行時の構成ファイルの適用

すでにコンテナがある場合は、次のような docker cp コマンドを使用して、実行時に .config ファイルをコンテナにコピーできます。

docker cp [config file] [container]:/opt/liferay/osgi/configs

さいごに

LiferayコンテナのJVMオプション、ポータルプロパティ、イメージ環境変数、システムプロパティ、およびシステム設定を構成する方法をマスターしました。