2016-12-05 55 views
1

我是AWS Lambda的新手,對Python很新穎。AWS如何知道我的進口是在哪裏?

我想編寫一個使用AWS API的Python lambda。

boto是最流行的python模塊來做到這一點,所以我想包括它。

在網上看例子我把import boto3放在我的Lambda的頂部,它只是工作 - 我能在我的Lambda中使用boto。

AWS如何知道boto?這是一個社區模塊。有沒有Lambdas支持的模塊列表? AWS是否緩存自己的社區模塊副本?

回答

3

The documentation似乎暗示boto3默認情況下,提供了AWS LAMBDA:

AWS LAMBDA包括AWS SDK的Python(博託3),所以你不需要把它列入你的部署包。但是,如果您想要使用默認包含的Boto3以外的版本,則可以將其包含在部署包中。

據我所知,您需要在您的部署包手動安裝任何其他的依賴關係,如圖所示鏈接文件中,使用:

pip install foobar -t <project path> 
+1

啊我錯過了,這就是很好的浮雕我是超級糊塗了! – red888

3

AWS拉姆達的Python環境預裝與boto3。您需要的任何其他庫都需要成爲您上傳的壓縮文件的一部分。您可以使用pip install whatever -t mysrcfolder在本地安裝它們。

+0

將-t將它們放到我的當前目錄中? – red888

+0

如果你使用'-t .',它會。您需要向目標文件夾傳遞額外參數。我建議創建一個簡單的構建腳本,創建一個臨時文件夾,將所有源代碼複製到那裏,調用'pip install -r /tmp/xxx/requirements.txt -t/tmp/xxx',然後壓縮整個文件夾。 – kichik