2016-10-06 78 views
0

我已經部署了我的zipped項目,但沒有psycopg2包。我想在我的lambda上安裝此軟件包,而無需重新上傳我的固定項目(我目前還無法訪問我的項目)。我如何在lambda上安裝package?是否有可能通過pip做到這一點?在AWS上安裝python包lambda

回答

0

這是不可能與pip。您必須將依賴項添加到您的壓縮Lambda部署文件。如果不上傳新的壓縮部署文件,則無法修改Lambda部署。

+0

和你會被重新上傳你的代碼中的許多其他時間。所以給自己寫一個部署腳本 – Marcom

0

直接在lambda上使用pip是不可能的。而是我用一個自定義生成腳本來創建壓縮包[這可以給你一個簡單的想法 - 它當然可以進行簡單得多]

rm -rf ~/devops/tempenv > /dev/null 
virtualenv ~/devops/tempenv 
source ~/devops/tempenv/bin/activate 
pip install SlackClient 
pip install PyYaml 
deactivate 
rm -rf temp > /dev/null 
mkdir temp 
rm aws-lambda.zip > /dev/null 
cp -r ~/devops/tempenv/lib/python2.7/site-packages/* temp/ 
cp *.py temp 
cd temp 
zip -r aws-lambda.zip . 
mv aws-lambda.zip ../ 
cd .. 
rm -rf temp 
rm -rf ~/devops/tempenv