Python 專案打包zip部屬至 AWS Lambda (含套件)

 

Python 專案打包zip部屬至 AWS Lambda

雖然現在基本都是透過 Docker 搭配 Aws ECR ,但是有時候只是想快速丟到Lambda跑跑看

就可以看這篇教學

複製引用套件

  1. 如過是pipenv的專案 可用以下方式轉成 requirements.txt
pipenv lock -r >requirements.txt
  1. 把引用的套件複製出來
docker run -v "<專案路徑>":/var/task "lambci/lambda:build-python3.8" /bin/sh -c "pip install -r requirements.txt -t python/lib/python3.9/site-packages/; exit"

使用這個指令 需要先安裝docker
專案路徑需使用絕對路徑

  1. 會將所以的套件複製到 python/lib/python3.9/site-packages/ 目錄下

打包zip

  1. 將"套件"的資料夾移動到 …/dest目錄
mkdir ../dest mv ./python/lib/python3.9/site-packages/* ../dest rm -rf ./python/
  1. 複製專案內的檔案到…/dest

  1. 用zip把 …/dest的專案打包巴 就可以上傳了

enjoy!

tags: devops aws python


md

留言

這個網誌中的熱門文章

angular 如何Http 如何設定 CORS (Cross-Origin Resource Sharing)

Google Map 單車路徑計算坡度和角度小工具

Google URL Shortener API 快速教學