1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人開発でよく使うAWS CLIコマンドまとめ

Posted at

AWS CLIはローカル環境からAWSの各種リソースを操作するために非常に便利なツールです。個人開発でも利用頻度が高く、頻出するコマンドをいくつか紹介します。

1. AWS CLI の基本設定

AWS CLIを利用する前に、初期設定として aws configure でアクセスキーなどの情報を設定します。

aws configure

AWS Access Key ID: AWSのアクセスキーID

AWS Secret Access Key: 秘密アクセスキー

Default region name: ex. ap-northeast-1 (東京リージョン)

Default output format: 通常は json が多い

こうしておけば、以降のコマンドで都度リージョン指定などをしなくてもよくなります。

2. S3 関連コマンド

AWS S3はよく利用されるオブジェクトストレージです。個人開発でもファイルのホスティングやバックアップ先として利用することが多いです。

バケット一覧の確認

aws s3 ls

バケットへのファイルアップロード

aws s3 cp <ローカルファイル> s3://<バケット名>/<アップロード先>

ローカルへのダウンロード

aws s3 cp s3://<バケット名>/<ファイルパス> <保存先>

同期アップロード: ローカルディレクトリとS3を同期

aws s3 sync <ローカルディレクトリ> s3://<バケット名>/<パス>

3. EC2 関連コマンド

個人開発でも、EC2インスタンスを利用する機会はよくあります。基本的にインスタンスの一覧を確認したり、新規インスタンス作成などを行います。

インスタンス一覧

aws ec2 describe-instances

インスタンスの詳細情報が大量に出力されます。必要に応じて --query オプションなどを用いてフィルタリングできます。

AMI一覧確認

aws ec2 describe-images --owners self amazon

独自に作成したAMIやAmazon公式のAMIを確認できます。

インスタンス起動例

aws ec2 run-instances \
  --image-id <AMI-ID> \
  --count 1 \
  --instance-type t2.micro \
  --key-name <SSH鍵名> \
  --security-group-ids <セキュリティグループID>

4. ECR 関連コマンド

DockerコンテナのイメージをAWS上に保存・管理するためのサービスがECR (Elastic Container Registry)です。個人開発でECSやFargateを使う際にはお世話になる場面が多いでしょう。

リポジトリ一覧

aws ecr describe-repositories

Dockerイメージのプッシュ手順

ECRにログイン (認証トークン発行)

aws ecr get-login-password | docker login --username AWS --password-stdin <AWSアカウントID>.dkr.ecr.<リージョン>.amazonaws.com

ローカルでDockerイメージをビルド

docker build -t <リポジトリ名> .

タグ付け

docker tag <リポジトリ名>:latest <AWSアカウントID>.dkr.ecr.<リージョン>.amazonaws.com/<リポジトリ名>:latest

プッシュ

docker push <AWSアカウントID>.dkr.ecr.<リージョン>.amazonaws.com/<リポジトリ名>:latest

5. Lambda 関連コマンド

AWS Lambdaはサーバーレスでコードを実行できる便利なサービスです。CLI上からコードのデプロイなども可能です。

関数一覧

aws lambda list-functions

関数更新 (ZIPファイルをアップロード)

aws lambda update-function-code \
  --function-name <Lambda関数名> \
  --zip-file fileb://<デプロイ用ZIPファイル>

実行テスト

aws lambda invoke \
  --function-name <Lambda関数名> \
  --payload '{"key":"value"}' \
  response.json

実行結果は response.json に出力されます。

6. DynamoDB 関連コマンド

NoSQLデータベースのDynamoDBも個人開発で利用する機会が比較的多いサービスです。

テーブル一覧の確認

aws dynamodb list-tables

テーブル作成 (例)

aws dynamodb create-table \
  --table-name <テーブル名> \
  --attribute-definitions AttributeName=Id,AttributeType=S \
  --key-schema AttributeName=Id,KeyType=HASH \
  --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5

項目の書き込み (put-item)

aws dynamodb put-item \
  --table-name <テーブル名> \
  --item '{"Id":{"S":"123"},"Name":{"S":"Test"}}'

7. CloudFormation 関連コマンド

インフラをコードとして管理する際にCloudFormationを使う場合、以下のCLIコマンドを活用すると便利です。

スタック一覧

aws cloudformation list-stacks

スタック作成

aws cloudformation create-stack \
  --stack-name <スタック名> \
  --template-body file://<テンプレートファイル>.yaml \
  --parameters ParameterKey=Example,ParameterValue=MyValue

スタック削除

aws cloudformation delete-stack \
  --stack-name <スタック名>

8. まとめ

ここで紹介したコマンドはAWS CLIのごく一部です。個人開発ではまず aws configure で認証とリージョンを設定し、あとは必要なサービスのCLIコマンドを調べながら使っていくことで効率良くAWSを操作できます。AWSの公式ドキュメントには各オプションも詳しく載っているため、さらに深く学びたい場合は必見です。

以上、個人開発でよく使うAWS CLIコマンドの簡単なまとめでした。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?