개요
프로젝트를 하다보면 AWS 리소스를 활용해야하는 경우가 항상 발생하는데 처음 사용해보는 리소스라면 실제로 구성해놓고 테스트하는게 항상 부담이였다.
그래서 로컬에 세팅할 순 없을까하고 찾아보다가 알게 된 localstack의 사용기에 대해서 써보려고합니다.
Localstack?
localstack은 개발 단계에서 필요한 AWS 클라우드 리소스 기능들을 로컬환경에서 에뮬레이션하여 제공해준다.
도커를 사용하여 간단하게 에뮬레이션할 수 있기 때문에 테스트에 매우 용이합니다.
환경 세팅
테스트 해본 AWS 리소스는 SQS
였고 docker-compose
를 이용하여 테스트를 진행했습니다.
- docker: 20.10.11
- docker-compose: 1.29.2
docker-compose.yml
1 | version: "3" |
- 참고한 사이트와 동일하게 docker-compose.yml을 구성하였습니다.
run.sh & create_queue.json
1 | #!/bin/bash |
1 | { |
- 위와 같이
run.sh
파일과create_queue.json
파일을 작성하여 실행할 수 있으며 SQS attributes에 관련된 사항은 링크에서 확인 할 수 있습니다. docker-compose.yml
에 작성한대로/aws
폴더 안에 json 파일을 위치시켜놓는다.aws --endpoint-url=https://localhost:4566 sqs list-queues
명령어로 생성된 큐를 확인할 수 있습니다.
Result
docker ps -a
aws --endpoint-url=http://localhost:4566 sqs list-queues