見出し画像

【保存版】AWS CLIを使って、S3を操作してみよう!

こんにちは、CryptoGamesの高橋です。

クリスペというサービスを行っている会社です。

本日は、CLI(コマンドラインインターフェース)を使って、S3を操作してみましょう。

0 料金の確認を行う

事前に料金を確認した上で進む事を推奨します。

1 AWS CLIをインストールしよう

次の公式を参考に、CLIをインストールしていきましょう。

私の場合はmacなので、ここから実施しました。

※以下は実施した時の参考です。
 実際に行うときは、上の公式に沿ってやってみてください。

1)ファイルのダウンロード

curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"

まずは、ファイルをダウンロードします。

2)installerプログラムの実行

sudo installer -pkg ./AWSCLIV2.pkg -target /

下のように、インストーラーが実行されました。

3)インストール確認

which aws
aws --version

下のようにバージョンの確認までできれば完了です。

2 IAMユーザーを作成する

操作を行うためのIAMユーザーを作成しましょう。

次に任意のユーザー名を入力し、「アクセスキー-プログラムによるアクセス」にチェックを入れて進みます。

「既存のポリシーを直接アタッチ」で下のように行います。

今回はテストで「S3FullAccess」を使っていますが、本番時などには必要な権限だけを設定して下さい。

今回はタグは特につけずに進みます。

ついているアクセス権限を確認して、「ユーザーの作成」

これで、「アクセスキー」「シークレットアクセスキー」ができました。

大きく書きましたが、非常に重要な情報なので、他の人には見せず、漏洩には十分気をつけて保管してください。

3 ローカルに認証情報を登録する

IAMができたので、aws configureコマンドで、アクセスキーIDなどのcredentialの内容を登録します。

--profile(名前付きプロファイル)を用いることで、複数のプロファイルを登録できます。

aws configure --profile <任意のプロファイル名>

なお、regionは関東の場合はap-northeast-1になると思います。

では、登録できたかを確認してみましょう。

aws configure --profile <任意のプロファイル名>

下の「:」の後にEnterを押していくと、このように設定した内容が出てきます。

ちなみに、この登録した内容は、ホームディレクトリ「.aws」フォルダに格納されています。

機密性の高い情報:「credentials」
機密性の低い情報:「config」

に登録されています。

4 CLIでS3を操作してみよう

では、CLIS3を操作してみましょう。

4ー1 バケットを作る

バケットを作るときはmake bucketの「mb」を使います。

aws s3 mb s3://<バケット名> --profile <プロファイル名>

下のように、第3章で作ったプロファイルも指定します。

このようにバケットが作られました!

4ー2 バケットリストを取得する

では、下のようにして、バケットリストも抽出しましょう。

aws s3 ls  --profile <プロファイル名>

下のように出てきました。
(一つしか作っていないので、一つだけです。)

4ー3 ローカルのデータをS3にアップロードする

では、ローカルのデータS3アップロードしてみましょう。

aws s3 cp <コピー元> <コピー先> --profile <プロファイル名>

このようにアップロードがされていました。

4ー4 バケットを空にする

では、バケットにしてみましょう。(全部削除)

CLIでは、バージョニングが有効化されていない場合のみ実行ができます。

「バージョニングって何?」という場合は、下記ご参照ください。

では、次のように実行してみましょう。

aws s3 rm s3://<バケット名> --recursive --profile <プロファイル名>

--recursiveというオプションをつけることになります。

無事に空になりました!

4ー5 バケットを削除する

では、最後にバケットを削除しましょう。

aws s3 rb s3://<バケット名> --profile <プロファイル名>

こんな感じです。

このように削除されていました。

なお、このコマンドはバケットが空でないとエラーになります。

5 クリーンアップをしよう

では、最後にクリーンアップを行いましょう。

S3にまだ残っている場合は、不要な場合は削除を行いましょう。

今回使った、IAMも不要なら削除を行いましょう。

内容を確認し、問題なければ「削除」

このように、削除が完了しました。

ホームディレクトリの「.aws」フォルダの「config」、「credeitials」についても、今回作成したprofileの分を十分確認の上、削除しましょう。

特に、それ以外にもprofileを設定している場合は、他のものも消さないように、十分ご注意ください。

今回は以上です。

最後までありがとうございました。

サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊