0
0

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】LocalStack環境を構築して動作確認する

Posted at

はじめに

こんにちは、shutamoです。

情報発信の練習と備忘録を兼ねて投稿してみます。
まだまだ未熟者なので、間違っていることがあれば指摘してください!

目次

  1. LocalStackとは
  2. 環境準備
  3. LocalStack環境構築
  4. AWSサービスを使うための準備

LocalStackとは

AWSをローカル環境でシミュレートできるツールです。
そのため料金などを気にすることなくAWSのサービスを気軽に確認が可能です。

LocalStackには無料版(Community)と有料版(Pro)があります。主な違いは下記の通りです。

・利用可能なAWSサービスの違い
・無料版ではリソースが永続化されない(LocalStackを再起動すると既存のリソースが削除される。)

利用可能なサービスはこちらのページを参照してください。一覧で(Pro)と記載のサービスは有料版でのみ利用可能です。

環境準備

Windowsを想定しています。

LocalStack環境構築

まずDockerがインストールされている必要があります。まだの人はインストールしておいてください。

公式サイトのDocker-Composeでの起動手順を参考に起動します。

1.任意のディレクトリにdocker-compose.ymlを作成する。

2.作成したdocker-compose.ymlに下記内容を記載する。

docker-compose.yml
version: "3.8"

services:
  localstack:
    container_name: "${LOCALSTACK_DOCKER_NAME:-localstack-main}"
    image: localstack/localstack
    ports:
      - "127.0.0.1:4566:4566"            # LocalStack Gateway
      - "127.0.0.1:4510-4559:4510-4559"  # external services port range
    environment:
      # LocalStack configuration: https://docs.localstack.cloud/references/configuration/
      - DEBUG=${DEBUG:-0}
    volumes:
      - "${LOCALSTACK_VOLUME_DIR:-./volume}:/var/lib/localstack"
      - "/var/run/docker.sock:/var/run/docker.sock"

3.ymlファイルがあるディレクトリに移動し次のコマンドを実行しコンテナを起動する。

docker-compose up -d

以上でLocalStackのサーバーが起動されました。

AWSサービスを使うための準備

1.AWS CLIをインストールする。

2.正しくインストールされたか確認のため以下のコマンドを実行してバージョン情報を取得する。

aws --version

3.動作確認として、awscliを利用してLocalStackにアクセスする。

cliからLocalStackにアクセスするためにはまずcredentialsを設定する必要があります。その際、credentialsの設定値は任意で問題ありません。

設定コマンド

aws configure --profile localstack

このように設定してみました

AWS Access Key ID [None]: test
AWS Secret Access Key [None]: test
Default region name [None]: ap-northeast-1
Default output format [None]: json

バケットの作成をしてみる

# 作成コマンド
aws s3 mb s3://[任意の名前] --endpoint-url=http://localhost:4566 --profile localstack

# 実行結果
make_bucket: [任意の名前]

削除したい場合は下記コマンドで削除できます。

aws s3 rb s3://[削除したいバケット名] --force --endpoint-url=http://localhost:4566 --profile localstack

--forceはバケット内のオブジェクトも一緒に削除するときに書く

S3バケット一覧取得

aws s3 ls --endpoint-url=http://localhost:4566 --profile localstack

以上です。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?