해결: AWS CDK 내에서 Python 앱을 번들로 묶는 방법
💡 마지막에 해결책 🙈
그래서
cdk init app --language=typescript
를 실행하여 AWS-CDK로 기본 TypeScript 프로젝트를 설정했습니다. 이제 Python으로 작성된 람다 함수를 사용하고 싶습니다. 수학 🤓다음과 같이 이러한 함수를 선언하기 위해
@aws-cdk/aws-lambda-python
를 사용하고 있습니다.import * as cdk from "@aws-cdk/core"
import * as lambdaPython from "@aws-cdk/aws-lambda-python"
export class MyStack extends cdk.Stack {
constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
super(scope, id, props)
new lambdaPython.PythonFunction(this, "MyFunction", {
entry: "lib/lambda/my_function",
})
}
}
그리고
lib/lambda/my_function
폴더 안에는 index.py
기능이 있는 handler
which are both the defaults for the package 가 있습니다.그러나 실행
cdk synth
하면 다음과 같은 결과가 나타납니다.$ cdk synth
[Status 1] stdout:
stderr: Cannot connect to the Docker daemon. Is the docker daemon running on this host?
Docker를 설정하는 방법에 대해 전혀 모릅니다. 안타깝게도 AWS 설명서에서 이에 대한 정보를 찾을 수 없습니다. (정확한? 😅) Docker 컨테이너를 실행하기 위해 내가 무엇을 해야 하는지 아는 사람이 있습니까?
해결책
최신 Docker 버전을 사용하시겠습니까? 😅 아주 오래된 것(
1.11.XX
)이 실행 중이었으며 이제 최신 Docker Desktop( 19.X.X
)을 설치하여 작동합니다. 🤷전반적으로: 이것은 정말 좋습니다. 이러한 설정에서 TypeScript와 Python을 매우 쉽게 혼합할 수 있습니다. 대박! 🚀 😄
Reference
이 문제에 관하여(해결: AWS CDK 내에서 Python 앱을 번들로 묶는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/herrbertling/question-how-to-bundle-python-apps-within-aws-cdk-1bbm텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)