AWS Lambda에 컨테이너화된 함수 배포
5129 단어 devopsawsjavascriptbeginners
AWS Lambda용 컨테이너 이미지 준비:
원하는 경우 할 수 있습니다clone the repo. 그렇지 않은 경우 다음을 따르십시오.
노드 프로젝트 내에
functions.js
라는 파일을 만들고 다음 샘플 함수를 추가합니다.// A sample function to demo containers deployment on aws lambda
exports.helloLambda = async (event) => {
const response = {
isBase64Encoded: false,
statusCode: 200,
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
message: "Containers on lambda!🐳",
}),
};
return response;
};
다음 내용으로 Dockerfile을 생성합니다.
FROM amazon/aws-lambda-nodejs:12
COPY functions.js package*.json ./
# RUN npm install // uncomment if your functions has dependencies
CMD [ "functions.helloLambda" ]
ECR*에 이미지 빌드, 태그 지정 및 푸시
aws ecr get-login-password --region <region-name> | docker login --username AWS --password-stdin <ecr-repo-uri-without-tag>
docker build -t node-app .
docker tag node-app:latest <ecr-repo-uri-without-tag>/<repo-name>:latest
docker push <ecr-repo-uri-without-tag>/<repo-name>:latest
*
AWS Lambda에 이미지 배포:
AWS Lambda 랜딩 페이지에서 "함수 만들기"를 선택합니다.
"컨테이너 이미지"를 선택하고 이름을 지정하고 이미지 URI(AWS ECR에서 얻을 수 있음)를 추가하고 '함수 만들기'를 클릭합니다.
기능을 테스트하려면 트리거를 추가하세요.
API 게이트웨이를 트리거로 선택하고 HTTP API를 생성하고 보안을 열어 둡니다(단순화를 위해).
트리거가 생성되면 엔드포인트 URL을 복사하여 브라우저에 붙여넣습니다.
응답 내용을 표시해야 합니다.
컨테이너가 AWS Lambda와 함께 작동하려면 AWS에서 제공하는 오픈 소스base container images를 사용하거나 기본 이미지에 추가lambda runtime interface clients할 수 있습니다. 자습서에서는 미리 빌드된 이미지를 사용했습니다.
연결하자:
링크드인:
트위터:
Reference
이 문제에 관하여(AWS Lambda에 컨테이너화된 함수 배포), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aws-builders/deploy-container-images-on-aws-lambda-functions-254h텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)