2022. 12. 25. 17:35ㆍ카테고리 없음
개발환경
ubuntu 20.04
사전지식
aws cli
아직 aws cli를 설치 안 했다면 이 글을 보고 설치한다.
ubuntu에 AWS cli 설치
개발환경 ubuntu 20.04 사전지식 AWS I AM 1. 우분투 업데이트, unzip, curl 설치 sudo apt update && sudo apt upgrade -y && sudo apt install unzip curl -y 2. aws cli 다운로드, 압축 풀기 curl "https://awscli.amazonaws.com/awscli-exe-linu
aaaag.tistory.com
1. aws sam을 설치한다.
wget "https://github.com/aws/aws-sam-cli/releases/latest/download/aws-sam-cli-linux-x86_64.zip" -O "awssam.zip" && unzip awssam.zip -d sam && sudo ./sam/install

위 화면처럼 sam이 설치되었다면 설치 끝이다.
정상적으로 작동하는지 테스트해보자
1. 아래 명령어를 입력한다.
sam init

위 화면처럼 세팅한다
- 퀵 스타트를 위해 1 입력
- 헬로 월드 출력 1 입력
- 가장 대중적인 언어 및 관리로 파이썬과 zip사용할 거냐는 질문에 y
- aws x-ray사용할 거냐는 말에 아니오 n
- 클라우드워치 사용할 거냐는 말에 아니오 n
- 프로젝트 이름은 디폴트 사용 엔터

위 화면과 같이 ls 명령어를 입력하면 sam-app폴더가 생성된 걸 볼 수 있고 폴더 안의 내용물을 확인하기 위해 tree 명령어를 사용했다.
내용 중 주의 깊게 내용은 event.json, app.py, template.yaml이다
- event.json : Lambda 함수를 호출 시 사용할 이벤트(aws gateway)
- app.py : Lambda 함수 로직이며 주 진입점
- template.yaml : aws에서 사용할 리소스들(S3, DynamoDB.. etc)
2. sam-app 폴더로 이동 후 빌드 한다
cd sam-app
sam build
만약 빌드 실패 에러가 날 경우 pip executable not found in your python 에러라면 pip를 설치해주자

sudo apt-get install python3-pip

위 화면과 같이 Succeeded가 나오면 성공이다
3. 실제 AWS에 배포한다
sam deploy --guided
위 명령어 실행 후 AWS sam이 이것저것 질문을 할 텐데 원하는 대답을 선택하면 끝이다.
참고 사이트
https://cloudbytes.dev/snippets/build-deploy-serverless-apps-on-aws-with-sam-cli#install-aws-cli
Build & Deploy serverless apps on AWS with SAM CLI
Detailed step by step guide on how to use SAM CLI to build serverless apps.
cloudbytes.dev