DevOps with GitLab:オブジェクトストレージサービスにおけるバケット間のオブジェクトコピー手順
このページでは、オブジェクトストレージサービス上のバケット間でバケット内オブジェクトをコピーする手順を説明します。
当手順では、コンピューティングサーバー上にAWS CLIをインストールし、AWS CLIのs3コマンドを用いてバケット間のオブジェクトコピーを行います。
なお、オブジェクトストレージサービスにおけるバケット作成手順の「オブジェクトストレージサービスの申し込み」「コマンド実行環境の準備」が実行されていることを前提としています。
オブジェクトストレージサービス上のバケット間でオブジェクトをコピーする手順
AWS CLIのS3コマンドを用いて、オブジェクトストレージサービス上のバケット間でのオブジェクトコピーを実行します。
S3コマンドの詳細についてはAWS社ドキュメントAWS CLI で高レベル (S3) コマンドを使用するを参照してください。
なお、バケット間のオブジェクトコピーでは対象となるバケットが同一リージョンに存在している必要があります。
コピー先バケットの作成
コピー先バケットの作成
コピー先となるバケットを作成します。
コピー先バケットは必ずコピー元バケットと同じオブジェクトストレージサービスリージョンに作成してください。$ aws --endpoint-url https://${オブジェクトストレージサービスのリージョン名}.storage.api.nifcloud.com s3api create-bucket --bucket ${コピー先バケット名}
コピー先バケットの確認
s3 ls コマンドを実行しバケットが作成されていることを確認します。
$ aws --endpoint-url https://${オブジェクトストレージサービスのリージョン名}.storage.api.nifcloud.com s3 ls
バケット間のオブジェクトコピー
バケット間のオブジェクトコピー
バケット間のオブジェクトコピーを実行します。
詳しくはAWS社ドキュメントオブジェクトの同期を参照してください。$ aws --endpoint-url https://${オブジェクトストレージサービスのリージョン名}.storage.api.nifcloud.com s3 sync s3://${コピー元バケット名} s3://${コピー先バケット名}
s3 ls コマンドにバケット名を指定して実行することでバケット内オブジェクトを一覧表示できます。
$ aws --endpoint-url https://${オブジェクトストレージサービスのリージョン名}.storage.api.nifcloud.com s3 ls s3://${コピー先バケット名} --recursive