oo

Liferayの旧バージョンをアップデートする

常に最新の情報を得ることで、最高のセキュリティと品質を得ることができます。

  • セキュリティアップデート は、最新のセキュリティ問題に即座に対応するためのリリースです。

  • アップデート は、最新のセキュリティアップデート、確認されたバグの修正、新機能の追加などを行ったリリースです。 これらの機能はデフォルトでは無効になっていますが、必要に応じてUIでオプトインすることができます。

ここでは、新しいLiferay Dockerイメージへのアップデート、新しいLiferay Tomcat Bundleへのアップデート、アプリケーションサーバーのLiferayインストールのアップデートの方法をご紹介します。

warning

Liferay DXP/Portalをアップデートする前に、必ず データベースとインストールをバックアップしてください。

important

Liferay DXP 7.3 SP3以前のバージョンでは、代わりにパッチモデルを使用しています。 Liferay DXP 7.3 SP3以前のバージョンをお使いの方は、Patching DXPをご覧ください。

note

Liferay DXP/Portal の General Availability (GA) リリースは、ソースコードからビルドされます。 アップデートとセキュリティアップデートはGAに沿って行われ、またソースコードから構築されます。

新しいDocker Imageへのアップデート

  1. 現在のDockerコンテナをシャットダウンします。

  2. Liferayのキャッシュを削除します。

    [Liferay Home]/osgi/state フォルダーを削除します。

    cd [Liferay Home]
    rm -rf osgi/state
    

    [Liferay Home]/work フォルダーを空にします。

    rm -rf work/*
    

    アプリケーションサーバーのキャッシュを削除します。 キャッシュの場所については、アプリケーションサーバーのベンダーのドキュメントを参照してください。

    note

    モジュールの変更が内部のみである場合、変更はOSGiフレームワークからは見えず、モジュールはインストールされたままであり、モジュールの状態は保持されます。 次回のサーバー起動前にOSGiバンドルの状態情報をクリアすることで、そのようなモジュールが適切な状態で再インストールされるようになります。

  3. Docker HubでLiferayのDockerイメージとタグ情報を検索します。

  4. データベースの変更やインデックスの変更については、リリースノートを確認してください。

    データベースに変更があった場合は、 docker run コマンドでこの環境設定を使用して、データベースのアップグレードが自動的に実行できるようにします。

    -e LIFERAY_UPGRADE_PERIOD_DATABASE_PERIOD_AUTO_PERIOD_RUN=true
    

    インデックスの変更がある場合は、 docker run コマンドで、この環境設定を使用してインデックスの更新を有効にします。

    -e LIFERAY_DATABASE_PERIOD_INDEXES_PERIOD_UPDATE_PERIOD_ON_PERIOD_STARTUP=true
    
  5. 新しいDockerイメージを、現在の環境とパラメータ、および必要なデータベース/インデックス環境の設定(前のステップから)で実行します。 例えば、新しいイメージにliferayというローカルフォルダをバインドマウントするイメージを実行するコマンドは次のとおりです。

    docker run -it -m 8g -p 8080:8080 \
     -v $(pwd)/liferay:/mnt/liferay \
     liferay/[place image name here]:[place tag here]
    
  6. docker run コマンドでデータベースのアップグレードやインデックスの更新を有効にした場合、コンソールやログにアップグレードの失敗やエラー、追加でアップグレードすべきオプションモジュールなどがすべて報告されます。 Gogo Shellのコマンド を使ってアドレスを指定することができます。 アップグレードが正常に完了したら、Dockerコンテナを停止して新しいコンテナを作成し、 docker run コマンドを で実行し、データベースのアップグレードやインデックスの更新の環境設定を 行わない ようにします。

新しいLiferayアップデートDockerイメージで動作しています。

新しいLiferay Tomcatバンドルへの更新

  1. 変更した System Settings ( ファイルストレージElasticsearch の設定を含む) を .config ファイル にエクスポートし、 [Liferay Home]/osgi/configs/ フォルダーにコピーしてください。

    例えば、 Advanced File System Store または 簡易ファイルシステムストア を使用している場合、ファイルストア設定を .config ファイル にエクスポートし、 [Liferay Home]/osgi/configs/ フォルダにコピーしてください。 以下に例を示します。 com.liferay.portal.store.file.system.configuration.AdvancedFileSystemStoreConfiguration.config ファイルに必要な rootDir パラメータ。

    rootDir="data/document_library"
    
  2. Commerce を使用していて、リリースノートにCommerceのデータベースのアップグレードが記載されている場合は、アップグレードの準備をしてください。 詳細については、 Liferay Commerceのアップグレード を参照してください。

  3. アプリケーションサーバーをシャットダウンします。

    理由:

    • Unixスタイルのシステムでは、通常、実行中のファイルを置き換えることができますが、古いファイルはメモリに常駐します。
    • Windowsシステムでは、使用中のファイルはロックされており、パッチを適用できません。
  4. インストールをバックアップしてください。

  5. ヘルプセンター (サブスクライバー) または コミュニティダウロード から、ご希望のLiferay DXP/Portal Tomcatバンドルのアップデートをダウンロードしてください。

  6. バンドルを任意の場所に解凍します。

  7. 新しいバンドルの [Liferay Home]/data フォルダを、 バックアップの[Liferay Home]/data フォルダに置き換えます。

  8. これらのファイルをバックアップから新しいインストールにコピーします。

    • 設定ファイル(.config ファイル)。
    • DXPアクティベーションキー(サブスクライバー)
    • ポータルプロパティ (例: portal-ext.properties)

    詳細は、構成とプロパティの移行を参照してください。

  9. Tomcatのカスタマイズ内容( [tomcat version]/conf フォルダのコンテンツや追加したライブラリなど)を、 バックアップ から新しいインストールに複製します。

  10. カスタムウィジェットとモジュールを新しいインストールにコピーします。

  11. リリースノートにデータベースの変更が記載されている場合は、互換性のある database upgrade option を使用して、すべての必要な変更と必要なオプションの変更を適用します。

  12. アプリケーションサーバーを起動します。

LiferayアップデートTomcatバンドルで動作しています。

アプリケーションサーバのインストールのアップデート

  1. アップデートの .war ファイルとOSG依存関係のZIPファイルをダウンロードします。

  2. アプリケーションサーバーをシャットダウンします。

    理由:

    • Unixスタイルのシステムでは、通常、実行中のファイルを置き換えることができますが、古いファイルはメモリに常駐します。
    • Windowsシステムでは、使用中のファイルはロックされており、パッチを適用できません。
  3. アプリケーションサーバーのインストールで、既存のLiferay Webアプリケーションの上に.war ファイルのコンテンツを展開します。

    サポートされているアプリケーションサーバーへのLiferayのインストールに関する詳細な情報へのリンクです。

  4. OSGi依存関係のZIPファイルのコンテンツを、 [Liferay Home]/osgi フォルダにマージします。

  5. Liferayのキャッシュを削除します。

    [Liferay Home]/osgi/state フォルダーを削除します。

    cd [Liferay Home]
    rm -rf osgi/state
    

    [Liferay Home]/work フォルダーを空にします。

    rm -rf work/*
    

    アプリケーションサーバーのキャッシュを削除します。 キャッシュの場所については、アプリケーションサーバーのベンダーのドキュメントを参照してください。

    note

    モジュールの変更が内部のみである場合、変更はOSGiフレームワークからは見えず、モジュールはインストールされたままであり、モジュールの状態は保持されます。 次回のサーバー起動前にOSGiバンドルの状態情報をクリアすることで、そのようなモジュールが適切な状態で再インストールされるようになります。

  6. リリースノートにデータベースの変更が記載されている場合は、互換性のある database upgrade option を使用して、すべての必要な変更と必要なオプションの変更を適用します。

  7. アプリケーションサーバーを再度起動します。

  Liferayインスタンスがアップデートされ、実行されています。

関連トピック