why
AWS S3 は Web コンソールの GUI だと、
ファイルを一つ一つ DL することしかできない。
サイトの CSS などが膨大な場合、すべて手動だと
かなり時間がかかってしまう。
なので一つのバケットをまとめて DL する方法を調べた。
前提
S3 のディレクトリと IAM ユーザーは作ってあるものとする
アクセスキーの生成
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-prereqs.html
この記事の通りに IAM の
左のリストメニューの Users
タブの一つの Security credentials
内部のボタンの Create access key
ここまで行くとモーダルが表示されるので
- Access Key ID
- Secret Access Key
これらを控える。
CLI アプリの DL
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
この記事を参考にして
インストーラーを DL
起動してインストール
which aws
/usr/local/bin/aws
aws --version
aws-cli/2.7.4 Python/3.9.11 Darwin/21.5.0 exe/x86_64 prompt/off
ターミナルで調べてみると、無事に入っていることが確認できた。
AWS の認証情報を入力する
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html
このクイックスタートの記事を参考にする
aws configure
AWS Access Key ID [None]:
aws configure コマンドを打つと
対話式で
- アクセスキーID
- シークレット アクセスキー
- リージョン名
- フォーマット端子
これらを求められるので入力する
前者 2 つは先ほど生成して
後者 2 つの
リージョンは ap-northeast-1
フォーマットは json
にする。
設定ファイルから読み込むこともできるらしい。
S3 のディレクトリを Clone する
https://blackbird-blog.com/aws-s3-cli-download
この blackbird-blog の記事を参考にする
S3 の bucket を選び、ディレクトリで Copy s3 URL ボタンをクリックすると
s3://bucketName/directoryName/
この構成で s3 URL がクリップボードにコピーされる
このバケット名まで使って
aws s3 cp {s3_URL} . --recursive
これでバケットの中身を全て DL できる
aws s3 cp s3://workspace.name/ . --recursive
download: s3://workspace.name/assets/css/main.css to assets/css/main.css
download: s3://workspace.name/assets/css/header.css to assets/css/header.css
....
このように、中身を全て DL できた!
Top comments (0)