애매한 잡학사전

AWS Serverless 개발 환경 세팅 in IntelliJ 본문

DEV/AWS

AWS Serverless 개발 환경 세팅 in IntelliJ

거대한 개발자 2022. 4. 12. 14:49
반응형

1. 개요

    - AWS Lambda를 이용한 기능 구현이 필요해서 구글링 해봤는데, 조금 복잡한 것 같아서 재사용을 위해 정리 한다.

    - IntelliJ를 기반으로 한다.

 

2. 프로그램 설치

    2-1. IntelliJ 플러그인 설치

        - File > Settings > Plugins > Marketplace 이동 후 AWS Toolkit 검색 후 설치 후 IntelliJ 재시작

 

    2-2. Docker 설치

        - Docker 는 응용 프로그램을 로컬에서 테스트하고 배포 패키지를 빌드 하기 위해 필요하다.

        - 경로 : https://docs.docker.com/desktop/windows/install/

 

Install Docker Desktop on Windows

 

docs.docker.com

 

Docker Desktop for Windows 클릭 후 프로그램 다운로드

 

        - Configuration 체크 후 Ok 버튼 클릭

설정 화면

 

        - 설치 진행

설치 중

 

        - 설치 완료 후 Close 버튼 클릭

설치 완료

 

        - Docker Desktop 실행

Docker Desktop 실행 icon

       

- I accept the terms 체크 후 Accept 버튼 클릭

 

        - 최초 Docker Desktop 실행 화면

 

        - Start 버튼 클릭 또는 Skip tutorial 선택

 

        - Start 버튼 클릭 했을 경우 tutorial을 시작하는데 안해도 상관 없다.

왼쪽 하단에 Skip tutorial을 선택하자

 

        - 설치 완료

다음 설치할 AWS SAMCLI 에서 필요에 따라 컨테이너 설치 등 작업을 수행하기 때문에 별도 작업이 필요없다.

 

        - 윈도우 cmd 창을 열어서 'docker' 명령을 실행하면 아래와 같은 화면이 나온다면 정상 설치 완료.

윈도우 cmd 창에서 docker 를 입력

 

    2-3. AWS SAM 윈도우용 설치

- AWS SAMCLI 설치 경로 : https://github.com/aws/aws-sam-cli/releases/latest/download/AWS_SAM_CLI_64_PY3.msi

- 설치 시작

잠시 대기

 

Next 클릭

 

I accept the terms in the License Agreement 체크 후 Next 클릭

 

Next 버튼 클릭

 

Install 버튼 클릭

 

설치 중

 

Finish 버튼 클릭

 

        - 윈도우 cmd 창에서 'sam' 입력 시 아래 화면이 나오면 정상 설치 완료

윈도우 cmd 창에서 sam 입력

 

3. Hello Serverless Application

    - 인텔리j 프로젝트 생성

AWS > AWS Serverless Application 선택 후 Next 버튼 클릭

    - Project name : HelloServerless

    - Project location : 적당한 위치 선택

    - Package Type : Zip

    - Runtime : Java8 ( nodejs로 작업할 경우 nodejs 선택 )

상황에 맞는 Runtime 선택

    - SAM Template : Maven을 활용하려고 하기 때문에 AWS SAM Hello World (Maven) 선택

상황에 맞는 SAM Template 선택
Finish 버튼 클릭
Create 버튼 클릭
프로젝트 초기화 진행 중

 

    - 기본 프로젝트 구조는 전체 프로젝트 (HelloServerless) 하위의 모듈(HelloWorldFunction) 로 각각의 함수형태로 구성되어 있다.

    - 함수를 추가하기 위해서는 모듈을 maven 프로젝트 구조로 추가하면 된다.

기본 실행 method ( handleRequest )

    - 테스트 runtime 설정

상단에 Edit Run/Debug configurations 클릭
상황에 맞는 Sample Text 선택

 

    - 기본 테스트를 위해 API Gateway AWS Proxy 선택

API Gateway AWS Proxy 선택

 

    - OK 버튼 클릭으로 Runtime 설정 창을 닫고 서버 실행

Build Failed 발생 시 아래 설정 진행

    - 서버 실행 시 Build Failed 발생 후 메시지가 No Maven executable found! 일 경우 아래 설정 진행

SAM CLI 탭에서 Build function inside a container 체크 후 OK 버튼 클릭

 

    - 처음 실행 시 docker container 생성 시간이 좀 걸림

빌드 및 docker container image 생성 진행
image 생성 완료
Container 생성 완료
Mounting 진행 중

    - Build Succeeded 후 JSON 형태의 정상 메시지 출력

Build 완료

    - 위의 화면까지 봤다면 개발환경은 정상적으로 구성되었다고 볼 수 있다.

 

이상 정리 끝!

 

Comments