バックアップのダウンロードとアップロード
Liferay Cloudのバックアップサービスでは、環境のデータベースとLiferayインスタンスのLIFERAY_HOME/dataフォルダのすべてのコンテンツのバックアップを作成します。 このコンテンツはアーカイブファイル(それぞれ.gzと.tgz)として保存されており、Liferay Cloudコンソールからダウンロードすることができます。
また、ユーザーはLiferay Cloudコンソール、または バックアップAPIを使用して、環境のバックアップをダウンロードまたはアップロードすることができます 。
CLIツールによるバックアップのダウンロード
CLIツールバージョン3.12.0以降およびLiferayサービスバージョン5.3.0以降が必要です。
CLIツール を使用すると、データベースとドキュメントライブラリボリュームの両方を含むバックアップを直接ダウンロードできます。
特定のバックアップのIDを使用してこのコマンドを実行すると、そのデータベースとドキュメントライブラリが同時にダウンロードされます。
lcp backup download --backupId [ID]
オプションのコマンドラインスイッチは3つあります。
--database は、データベースのみをダウンロードすることを指定します。
--doclib は、ドキュメントライブラリのみをダウンロードすることを指定します。
--concurrency は、並列でダウンロードするファイルの数を定義します (最大 10,000)。
複数のスイッチを使用した例を以下に示します。
lcp backup download --backupId [ID] --doclib --concurrency 500
同時にダウンロードする最適なファイル数は、お使いのシステムとネットワークの仕様によって異なります。 --concurrency フラグは、データベースが単一ファイルとしてダウンロードされるため、ドキュメントライブラリのダウンロードにのみ影響します。
CLIツールによるバックアップのアップロード
CLIツールバージョン3.12.0以降およびLiferayサービスバージョン5.3.0以降が必要です。
Liferay Cloudでは、データベースのテーブルとカラムの名前は大文字と小文字が区別されます。 テーブル名には正しい大文字小文字の区別(PostgreSQLの場合は小文字、MySQLの場合はパスカルケース)を使用してください。 詳細については、 表の大文字小文字を正しくする を参照してください。
データベースとドキュメントライブラリの両方を含むバックアップをアップロードするには、次のコマンドを実行します。
lcp backup upload --project [Project name] --environment [Environment] --doclib [Path to document library folder] --database [Path to database .gz file]
データベースダンプをアップロードするには、.gzアーカイブを作成して圧縮する必要があります。
並列アップロードするストリーム数 (最大 10,000) を指定して、 --concurrency フラグを追加することもできます。
データベースとドキュメントライブラリのアップロード準備
Liferay Cloudに環境のバックアップをアップロードするには、データベースを専用のアーカイブファイルとして準備しておく必要があります。 バックアップサービスのバージョンが5.9.0より前の場合は、ドキュメントライブラリを別のアーカイブファイルに圧縮する必要があります。
データベースファイルの作成
データベースダンプを作成するには、PostgreSQLデータベースとMySQLデータベースで異なるコマンドが必要です。 お使いのデータベースの種類に応じた詳細な手順については、 データベースダンプの作成 を参照してください。
これらの手順では、データベースをダンプして圧縮し、結果として database.gz ファイルを作成します。
ダンプを作成する際にデータベースを無視するには、 LCP_DUMP_DATABASES_TO_IGNORE 変数を使用します。
ボリュームファイルの作成
LCP ツールを使用してバックアップをアップロードする場合、ツールがドキュメント ライブラリのファイルを自動的に圧縮するため、ボリューム ファイルは必要ありません。
クラウドコンソールのUIまたはAPIを介してバックアップをアップロードするには、ドキュメントライブラリを圧縮してからアップロードする必要があります。
バックアップをアップロードする際にLiferay Cloudの権限がまだ設定されていない場合、その後バックアップを環境に復元するのに時間がかかることがあります。 復元に時間がかかるのを避けるため、 LIFERAY_HOME フォルダーに移動し、ドキュメント ライブラリを圧縮する前に次のコマンドを実行します: chown -R 1000:1000 data/document_library/.
このコマンドを実行すると、データボリュームが圧縮されます。
cd $LIFERAY_HOME/data && tar -czvf volume.tgz document_library
コンソールによるバックアップのダウンロード
コンソール経由でバックアップをダウンロードできるのは、ドキュメントライブラリストアとしてGCSを使用していない場合に限ります。 もしそうであれば、代わりに CLI ツール を使用してください。
管理者として、以下の手順に従って、選択した環境の バックアップ ページからバックアップをダウンロードしてください。
-
ダウンロードしたいバックアップの アクション (⋮)をクリックしてください。
-
をクリックしてダウンロードをダウンロードしてください。
![[Actions] ボタンをクリックして、[Download] をクリックします。](https://resources.learn.liferay.com/images/dxp/latest/en/cloud/platform-services/backup-service/downloading-and-uploading-backups/images/01.png)
-
ダウンロードを開始するには、 Database (
.gz) または Liferay (.tgz) ファイルをクリックしてください。 これらのZIPアーカイブを合わせて、環境のバックアップとします。注バックアップ サービスがまだバージョン
4.2以降に更新されていない場合、データベース ボリュームは.tgzアーカイブとしてダウンロードされ、.gzとしてはダウンロードされません。
コンソールによるバックアップのアップロード
Liferay Cloudにバックアップをアップロードする前に、データベースダンプとドキュメントライブラリを別々のアーカイブに圧縮する必要があります。 オンプレミス環境向けにデータベースとドキュメントライブラリを準備する方法の詳細については、 データベースとドキュメントライブラリをアップロード用に準備する を参照してください。
Liferay Cloudでは、データベースのテーブルとカラムの名前は大文字と小文字が区別されます。 データベースをアップロードする前に、テーブル名がパスカルケースであることを確認してください。 詳細については、 表の大文字小文字を正しくする を参照してください。
バックアップページから以下の手順に従ってください。
-
画面上部付近の バックアップのアップロード… をクリックします。
-
バックアップのアップロードページで、該当する環境を展開し、データベースとドキュメントライブラリの両方の
[+]アイコンをクリックしてアップロードします。
-
データベース・ダンプとドキュメント・ライブラリの両方がアップロードされたら、 [アップロードの開始] をクリックします。
Liferay Cloudは、アップロードされたファイルを使用してバックアップを生成し、それを環境に復元できるリストに追加します。 バックアップが生成されている間は、他のバックアップの生成や復元はできません。
バックアップが生成されると、ページに成功メッセージが表示され、サービスは通常の動作を再開します。

バックアップサービスのAPI
バックアップサービスにはAPIが用意されており、バックアップのダウンロードやアップロードにも利用できます。 これらのAPIは、 curlのようなコマンドラインツールを使って呼び出すことができます。 バックアップサービスのバージョンでCLIによるアップロードが利用できない場合、または以下のエラーが表示される場合にのみ、バックアップAPIを使用してください。
Project [projectId] does not have GCS enabled for Document Library Store.
ホスト名の取得
バックアップAPIを呼び出すには、バックアップサービスのホスト名が必要です。 これは、 サービス のページにあります。

バックアップサービスのホスト名は、サービス名、プロジェクト名、環境名を組み合わせたものです。
この例を考えてみましょう。
- サービス名:
backup - プロジェクト名:
lfrjoebloggs - 環境名:
prd - ホスト名:
backup-lfrjoebloggs-prd.lfr.cloud
認証
ベーシック認証やユーザーアクセストークンを使って、リクエストを認証することができます。
SSOが有効な場合、トークン認証が必要であることに注意してください。 このトークンをcookie access_token から取得し、 dxpcloud-authorization ヘッダーで使用できます。
アップロードAPIでトークン認証を利用した例をご紹介します。
curl -X POST \
https://backup-[Project name]-[Environment].lfr.cloud/backup/upload \
-H 'Content-Type: multipart/form-data' \
-H 'dxpcloud-authorization: Bearer [User token]' \
-F 'database=@/my-folder/database.gz' \
-F 'volume=@/my-folder/volume.tgz'
ヘッダー dxpcloud-authorization にユーザー トークンを渡す方法は、バックアップ サービスのバージョン 3.2.0 以降でのみ機能します。 以前のバージョンは、少なくとも 3.2.0 にアップグレードする必要があります。 以前のバージョンへのリクエストでは、ヘッダー Authorization: Bearer [Project master token] を使用する必要があります。 Liferay Cloud コンソールの任意のシェルで、コマンド env | grep LCP_PROJECT_MASTER_TOKEN を実行すると、プロジェクトマスタートークンを見つけることができます。
データベースAPIのダウンロード
データベースをダウンロードするAPIには、 .gz ファイルを返すエンドポイントがあります。 id パラメータはバックアップIDを表しており、これは「バックアップ」ページで確認できます。 このIDは、2つのダッシュで区切られた3つの文字列で設定 されています(例: dxpcloud-lqgqnewltbexuewymq-201910031723)。
パラメーター
| 名前 | 種類 | 必須 |
|---|---|---|
id | String | はい |
curlの例
curl -X GET \
https://backup-[Project name]-[Environment].lfr.cloud/backup/download/database/[ID] \
-u user@domain.com:password \
--output database.gz
バックアップ サービスがまだバージョン 4.2 以降に更新されていない場合、データベース ボリュームは .tgz アーカイブとしてダウンロードされ、 .gz としてはダウンロードされません。
Data Volume APIのダウンロード
データボリュームをダウンロードするAPIには、 .tgz ファイルを返すエンドポイントがあります。 id パラメータはバックアップIDを表しており、これは「バックアップ」ページで確認できます。 このIDは、2つのダッシュで区切られた3つの文字列で設定 されています(例: dxpcloud-lqgqnewltbexuewymq-201910031723)。
パラメーター
| 名前 | 種類 | 必須 |
|---|---|---|
id | String | はい |
curlの例
curl -X GET \
https://backup-[Project name]-[Environment].lfr.cloud/backup/download/volume/[ID] \
-u user@domain.com:password \
--output volume.tgz
バックアップAPIのアップロード
アップロードバックアップAPIを使ってLiferay Cloudにバックアップをアップロードするには、以下の手順に従ってください。
-
データベースファイル を作成します。
-
データベースとボリュームファイルを使用してバックアップ API を呼び出します。
アップロードAPIを使用する前に、データベースダンプとドキュメントライブラリを別々のアーカイブに圧縮する必要があります。 オンプレミス環境へのアップロードの準備に関する詳細については、 データベースとドキュメント ライブラリのアップロード準備 を参照してください。
バックアップAPIの呼び出し
パラメーター
| 名前 | 種類 | 必須 |
|---|---|---|
database | File | はい |
volume | File | はい |
curlの例
curl -X POST \
https://backup-[Project name]-[Environment].lfr.cloud/backup/upload \
-H 'Content-Type: multipart/form-data' \
-F 'database=@/my-folder/database.gz' \
-F 'volume=@/my-folder/volume.tgz' \
-u user@domain.com:password