AWS

【AWS】AWS CLIコマンドチートシート

AWS
この記事は約6分で読めます。

はじめに

AWSを用いて、開発を行う際に、マネジメントコンソールに慣れすぎて、CLIを疎かにしていませんか?

確かに、マネージメントコンソールを利用する方が、簡単にいろんなサービスを使用でき、安定性があ

ります。

しかし、CLIを使用するとプロセスの内部理解ができる・・・!だけではなく、

エンジニアっぽくてかっこいいですよね(大切)

この記事では、マネージメントコンソールに慣れすぎてCLIを疎かにしている全AWSユーザーに向けて

AWS CLIの基本的なコマンドを記載しようと思います。またコマンドにつきましては、適宜読み解いて

いただきまして、変更いただければと思います。

EC2

インスタンスを起動する

aws ec2 run-instances --image-id ami-xxxxxxxx --count 1 --instance-type t2.micro --key-name MyKeyPair --security-group-ids sg-903004f8 --subnet-id subnet-6e7f829e

インスタンスの一覧を表示する

aws ec2 describe-instances

インスタンスを終了する

aws ec2 terminate-instances --instance-ids i-5203422c

Lambda

デプロイパッケージを作成する

zip function.zip index.js

関数を作成する

aws lambda create-function --function-name my-function --zip-file fileb://function.zip --handler index.handler --runtime nodejs20.x --role arn:aws:iam::123456789012:role/lambda-ex

関数を実行する

aws lambda invoke --function-name my-function out --log-type Tail

関数を更新する

aws lambda update-function-configuration --function-name my-function

関数を削除する

aws lambda delete-function --function-name my-function

AWS公式ドキュメント

AWS CLI での Lambda の使用 - AWS Lambda
AWS Command Line Interface で AWS Lambda API を使用します。

S3

バケットを作成する

aws s3 mb <target> [--options]

バケットの一覧を表示する

aws s3 ls <target> [--options]

バケットを削除する

aws s3 rb <target> [--options]

オブジェクトのコピーを行う

aws s3 cp <source> <target> [--options]

ローカルディレクトリよりオブジェクトをコピーする場合こちらのコマンドを使用します。

オブジェクトを削除する

aws s3 rm  <target> [--options]

AWS公式ドキュメント

AWS CLI で高レベル (S3) コマンドを使用する - AWS Command Line Interface
aws s3 名前空間で高レベルの Amazon S3 コマンドを使用して、AWS Command Line Interface (AWS CLI) でバケットとオブジェクトを管理します。

SQS

SQSを作成する

sqs create-queue

SQSの一覧を取得する

sqs list-queues

SQSにメッセージを送信する

sqs send-message --queue-url http://000000000000/test_sqs --message-body "Hello World"

SQSのメッセージを確認する

sqs receive-message --queue-url http://localhost:4566/000000000000/test_sqs

AWS公式ドキュメント

Amazon SQSスタンダードキュー - Amazon Simple Queue Service
Amazon SQSスタンダードキューのプロパティについて説明します。

DynamoDB

テーブルを作成する

dynamodb create-table --table-name MyNewTable --attribute-definitions AttributeName=user,AttributeType=S AttributeName=time,AttributeType=S --key-schema AttributeName=user,KeyType=HASH AttributeName=time,KeyType=RANGE --billing-mode PAY_PER_REQUEST

テーブルの一覧を取得する

dynamodb list-tables

テーブルの構成と設定の詳細を取得する

dynamodb describe-table --table-name MyTable

テーブルにアイテムを入れる

dynamodb put-item --table-name MyTable  --item '{"user": {"S": "user1"}, "time": {"S": "202204271018000"}, "title": {"S": "title1"}, "contents": {"S": "contents1"}, "done": {"N": "0"}}'

テーブル内のアイテムを取得する

dynamodb get-item --table-name MyTable --key '{ "user": { "S": "user1" },  "time": { "S": "202204271018000" }  }'

テーブル内のアイテムを更新する

dynamodb update-item --table-name MyTable --key '{ "user": { "S": "user1" },  "time": { "S": "202204271018000" }  }'   --update-expression 'set contents = :contents, done=:done' --expression-attribute-values '{ ":contents": { "S": "updated2" }, ":done": { "N": "1" }  }' --return-values 'ALL_NEW'

テーブル内のアイテムを削除する

dynamodb delete-item --table-name todo --key '{ "user": { "S": "user1" },  "time": { "S": "202204271018000" }  }'

テーブルを削除する

dynamodb delete-table --table-name MyTable

AWS公式ドキュメント

AWS CLI を使用する場合 - Amazon DynamoDB
AWS CLI を使用して、DynamoDB を用いたアドホックオペレーションの実行またはスクリプト記述を行います。

おわりに

ローカル環境でこちらのCLIを実験できる環境作りについて下記に私の作った記事がありますので見てい

ただければと思います。

私はマネージメントコンソールが好き。

参考