No.48
【AWS】S3のバケットをコピーする
AWSでS3のバケットをコピーしたい
開発時にS3に環境ごとのバケットを作成している時、特定の環境のバケットを他の環境にコピーしたくなる時があるだろう。
例えば、リリース前のECサイトで商品画像を先に仮バケットに準備しておき、リリース時にそのファイルをリリース環境にコピーする、などありがちな状況だと思う。
以前はSFTPを使ってバケット→ローカル→バケットとかやっていたのだが、簡単にコマンド一発で実行できることを知ったのでメモ。
…常識?
AWS CLI を使う
AWS CLI の sync コマンドを使えば一発だった。S3はなんかバケットに直接アクセスすると異常に遅い事もあり、断然こちらがお薦めだ。
aws s3 sync s3://コピー元のバケット名 s3://コピー先のバケット名
なお、実行にはS3へのアクセス権限を持つIAMユーザーが必要。aws configure
でaccesskeyなどを登録しておくこと。