Localstack là một giải pháp để các bạn sinh viên hoặc các bạn ko muốn lab mà chưa có account personal AWS cũng như sợ rằng vấn đề cost là điều làm bạn lo lắng. các sử dụng rất đơn giản và hướng dẫn này mình làm trên HĐH Ubuntu. Các bạn có thể tham khảo cũng như xem thêm document của chính chủ.
I. Cài đặt
Đảm bảo rằng bạn đã cài sẵn docker và docker-compose.
Download file nén binary:
curl -Lo localstack-cli-2.3.0-linux-amd64-onefile.tar.gz \ https://github.com/localstack/localstack-cli/releases/download/v2.3.0/localstack-cli-2.3.0-linux-amd64-onefile.tar.gz
Giải nén
sudo tar xvzf localstack-cli-2.3.0-linux-*-onefile.tar.gz -C /usr/local/bin
Kiểm tra lại localstack được cài đặt thành công hay chưa:
localstack --version 2.3.0
II. Get API key localstack
Tiến hành tạo account, sau khi tạo thành công bạn có thể tạo được API key.
Quay lại local machine, run command sau để nạp API key:
export LOCALSTACK_API_KEY=XXXXXXXXXX
Tạo file 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: - DEBUG=${DEBUG-} - DOCKER_HOST=unix:///var/run/docker.sock volumes: - "${LOCALSTACK_VOLUME_DIR:-./volume}:/var/lib/localstack" - "/var/run/docker.sock:/var/run/docker.sock"
start container:
docker-compose up
root@tritran-thinkpad-l15:/tmp# docker-compose up Starting localstack_main ... done Attaching to localstack_main localstack_main | localstack_main | LocalStack version: 2.3.1.dev localstack_main | LocalStack Docker container id: 898fe80f20d8 localstack_main | LocalStack build date: 2023-09-29 localstack_main | LocalStack build git hash: eb04e122 localstack_main | localstack_main | 2023-09-30T16:08:58.564 INFO --- [-functhread4] hypercorn.error : Running on https://0.0.0.0:4566 (CTRL + C to quit) localstack_main | 2023-09-30T16:08:58.564 INFO --- [-functhread4] hypercorn.error : Running on https://0.0.0.0:4566 (CTRL + C to quit) localstack_main | 2023-09-30T16:08:58.820 INFO --- [ MainThread] localstack.utils.bootstrap : Execution of "start_runtime_components" took 903.21ms localstack_main | Ready.
Bạn quay lại dashboard localstack sẽ thấy service ở trạng thái running
III. Add credentials để tương tác với aws-cli
Thêm vào file ~/.aws/credentials nội dung sau:
[localtest] aws_access_key_id = test aws_secret_access_key = test region = us-east-1
Bạn có thể trực tiếp dùng aws-cli hoặc dùng awslocal wrapper cũng được:
https://github.com/localstack/awscli-local
Nếu dùng aws-cli thì bạn phải thêm –endpoint-url http://localhost:4566 vào:
That’s all. hy vọng giúp ích mọi người.