MyTetra Share
Делитесь знаниями!
Создать Lambda-совместимый ZIP-пакет из виртуального окружения Python
Время создания: 10.01.2021 22:13
Автор: br0ke
Текстовые метки: aws, lambda, zip, package, deploy, deployment, python, pip, pipenv, virtualenv, virtual, env
Раздел: Информационные технологии - AWS - Lambda
Запись: and-semakin/mytetra_data/master/base/1610298822z5wwta5du8/text.html на raw.githubusercontent.com

В простом случае (когда не требуется сборка нативных библиотек) можно обойтись следующим скриптом:


mkdir output

pipenv lock -r > requirements.txt

pip install -r requirements.txt --no-deps -t output

zip -r output.zip output


В более сложном случае (когда из-за нативных библиотек нужно в процессе сборки использовать наиболее похожее к AWS Lambda окружение) можно использовать для сборки Docker:


mkdir output

pipenv lock -r > requirements.txt

docker run --rm \

-v $(PWD)/output:/var/task:z \

-v $(PWD)/requirements.txt:/requirements.txt:z \

-u 0 lambci/lambda:build-python3.8 \

python3.8 -m pip install -t /var/task/ -r /requirements.txt

zip -r output.zip output

 
MyTetra Share v.0.60
Яндекс индекс цитирования