without haste but without rest

LocalStack - AWS를 로컬 환경에서 사용하기 본문

Cloud

LocalStack - AWS를 로컬 환경에서 사용하기

JinungKim 2022. 1. 4. 17:19
공식 도큐먼트
깃허브
onexlab

LocalStack

aws 서비스를 로컬 환경에서 테스팅할 수 있게 해주는 에뮬레이터다.

aws cli, localstack을 설치하고 작동을 확인하는 것 까지를 목표로 한다.

Requirements

  • MacOS
  • Python 3.6 up to 3.9
  • pip
  • Docker compose

Install

# Install aws cli
brew install awscli

# Install localstack
python3 -m pip install localstack

docker compose

version: "3.8"

services:
  localstack:
    container_name: "${LOCALSTACK_DOCKER_NAME-localstack_main}"
    image: localstack/localstack
    network_mode: bridge
    ports:
      - "127.0.0.1:4566:4566"
      - "127.0.0.1:4571:4571"
    environment:
      - SERVICES=${SERVICES-}
      - DEBUG=${DEBUG-}
      - DATA_DIR=${DATA_DIR-}
      - LAMBDA_EXECUTOR=${LAMBDA_EXECUTOR-}
      - HOST_TMP_FOLDER=${TMPDIR:-/tmp/}localstack
      - DOCKER_HOST=unix:///var/run/docker.sock
    volumes:
      - "${TMPDIR:-/tmp}/localstack:/tmp/localstack"
      - "/var/run/docker.sock:/var/run/docker.sock"

Run

docker compose up -d

엔드포인트에 접근하면 로컬스택의 상태를 확인할 수 있다.

 

 

health 값을 주면 사용가능한 서비스와 구동 중인 서비스를 확인할 수 있다.


테스트

버킷 생성

aws --endpoint-url=http://localhost:4566 s3 mb s3://test-bucket

aws cli를 이용해서 로컬 스택 엔드포인트에 접근해서 s3에 test-bucket을 생성한다. 

 

버킷 목록 확인

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

 

Comments