매우 간단한 Lambda Layers 샘플 (Python, Serverless Framework 사용)
레이어
여러 Lambda에서 불리는 공통 모듈을 이미지.
디렉토리 구성common
├── serverless.yml
└── layer
└── python
└── util.py
serverless.ymlservice: sample-layer
provider:
name: aws
layers:
samplelayer:
path: layer
util.pydef hello():
print('Hello, Lambda Layers World!')
람다 기능
위의 레이어 모듈을 호출하는 람다.
디렉토리 구성function
├── serverless.yml
└── handler.py
serverless.ymlservice: sample-function
provider:
name: aws
runtime: python3.7
iamRoleStatements:
- Effect: "Allow"
Action:
- "lambda:InvokeFunction"
Resource: "*"
functions:
samplefunction:
handler: handler.handle_request
layers:
- {上記のLayerをsls deployした時に表示されるarn}
handler.pyimport util
def handle_request(event, context):
util.hello()
실행 결과
주의점 등
common
├── serverless.yml
└── layer
└── python
└── util.py
service: sample-layer
provider:
name: aws
layers:
samplelayer:
path: layer
def hello():
print('Hello, Lambda Layers World!')
위의 레이어 모듈을 호출하는 람다.
디렉토리 구성
function
├── serverless.yml
└── handler.py
serverless.yml
service: sample-function
provider:
name: aws
runtime: python3.7
iamRoleStatements:
- Effect: "Allow"
Action:
- "lambda:InvokeFunction"
Resource: "*"
functions:
samplefunction:
handler: handler.handle_request
layers:
- {上記のLayerをsls deployした時に表示されるarn}
handler.py
import util
def handle_request(event, context):
util.hello()
실행 결과
주의점 등
/opt
로 전개된다. 여기에는 경로가 있어 Python이라면 /opt/python
와 /opt/python/lib/python3.7/site-packages
를 사용할 수 있으므로 Layer도 python
디렉토리를 포함한 디렉토리 구성으로 할 필요가 있다. Reference
이 문제에 관하여(매우 간단한 Lambda Layers 샘플 (Python, Serverless Framework 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ttkiida/items/255b124a3cf180329c8a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)