在 Python 中指定依附元件

您可以透過兩種方式,為以 Python 編寫的 Cloud 函式指定依附元件:使用 pip 套件管理員的 requirements.txt 檔案,或與您的函式一起封裝本機依附元件。

透過 pip 指定依附元件

Python 中的依附元件是透過 pip 管理,並以稱為 requirements.txt 的中繼資料檔案表示。這個檔案必須與包含函式程式碼的 main.py 檔案位在同一目錄。

部署函式時,Cloud Functions 會使用 pip 下載並安裝 requirements.txt 檔案中宣告的依附元件。

requirements.txt 檔案中,一行代表一個套件,每行都包含套件名稱,並可視需要加入要求的版本。詳情請參閱 requirements.txt 參考資料

以下是 requirements.txt 檔案範例:

requests==2.20.0
numpy

封裝本機依附元件

如果您無法透過 pip 套件管理員使用依附元件,可以將依附元件與函式一起封裝與部署。舉例來說,您可以採用如下的目錄結構:

myfunction/
├── main.py
└── mylocalpackage/
    ├── __init__.py
    └── myscript.py

接著您可以使用本機依附元件 mylocalpackage 的程式碼:

from mylocalpackage.myscript import foo

使用私人依附元件

依附元件安裝在未提供安全殼層 (SSH) 金鑰組存取權的 Cloud Build 環境中。如果套件託管在需要 SSH 型驗證的存放區內,則必須與專案的程式碼一起提供及上傳,如前一節所述。

在部署應用程式前,您可以搭配 -t DIRECTORY 標記使用 pip install 指令,將私人依附元件複製到本機目錄中,步驟如下:

  1. 將您的依附元件複製到本機目錄:

    pip install -t DIRECTORY DEPENDENCY
  2. DIRECTORY 目錄中新增一個空白的 __init__.py 檔案,將其轉換成模組。

  3. 從此模組匯入以使用您的依附元件:

    import DIRECTORY.DEPENDENCY

預先安裝的套件

在部署期間,系統會自動一併安裝以下 Python 套件和您的函式。如果您要在函式程式碼中使用下列任一套件,建議您在 requirements.txt 檔案中加入下列版本:

click==6.7
Flask==1.0.2
itsdangerous==0.24
Jinja2==2.10
MarkupSafe==1.0
pip==18.0
requests==2.21.0
setuptools==40.2.0
Werkzeug==0.14.1
wheel==0.31.1

此外,Python 執行階段在執行環境中還包含多個系統套件。如果您函式使用的依附元件需要未列出的系統套件,您可以要求套件

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Functions Documentation