Lambda에 컨테이너 이미지로 트랜스파일된 TypeScript 코드 배포하기

Lambda에 컨테이너 이미지로 트랜스파일된 TypeScript 코드 배포하기

트랜스파일(transpile)된 TypeScript 코드를 Node.js 컨테이너 이미지로 만들어 AWS Lambda 함수에 배포할 수 있어요. AWS는 컨테이너 이미지를 빌드할 때 도움이 되는 Node.js용 베이스 이미지를 제공합니다. 이 베이스 이미지에는 Lambda에서 이미지를 실행하는 데 필요한 언어 런타임과 기타 구성 요소가 미리 탑재되어 있어요. 또한 AWS는 각 베이스 이미지에 대해 컨테이너 이미지 빌드를 돕는 Dockerfile을 제공합니다.

출처: AWS Lambda 개발자 안내서

본문

커뮤니티 또는 프라이빗 엔터프라이즈 베이스 이미지를 사용한다면, 그 이미지를 Lambda와 호환되도록 Node.js 런타임 인터페이스 클라이언트(RIC)를 베이스 이미지에 추가해야 해요.

Lambda는 로컬 테스트용 런타임 인터페이스 에뮬레이터를 제공합니다. Node.js용 AWS 베이스 이미지에는 런타임 인터페이스 에뮬레이터가 포함되어 있어요. Alpine Linux 또는 Debian 이미지 같은 대체 베이스 이미지를 사용한다면, 에뮬레이터를 이미지에 빌드하거나 로컬 머신에 설치한 뒤 사용할 수 있습니다.

Node.js 베이스 이미지로 TypeScript 함수 코드 빌드 및 패키징하기

Node.js 베이스 이미지를 사용해 TypeScript 함수 코드를 빌드하고 패키징하는 방법을 살펴봅니다. TypeScript 코드는 트랜스파일을 거쳐 JavaScript로 변환된 다음, 컨테이너 이미지에 패키징되어 Lambda에 배포됩니다.

더 알아보기 (Learn more)