全部產品
Search
文件中心

Function Compute:為函數安裝第三方依賴

更新時間:Jan 16, 2025

Function Compute運行環境中已內建常用的依賴,供您直接在函數中引用。同時,Function Compute支援使用第三方依賴。本文介紹如何為函數安裝第三方依賴。

背景資訊

您可以在以下文檔的內建模組章節,查看Function Compute內建的常用依賴。

通過層安裝依賴

Function Compute已經發布了部分依賴庫,您可以直接使用。更多資訊,請參見在函數中配置官方公用層。如您想擷取更多的公開層,請參見awesome-layers

直接使用官方公用層安裝依賴

  • 官方公用層

    建立函數後,在函數詳情頁面,單擊函數配置頁簽,在地區,單擊編輯,然後在編輯函數層面板選擇+添加層 > 添加官方公用層。具體操作,請參見在函數中配置官方公用層

  • 非官方公用層

    awesome-layers找到目標層,擷取層ARN。在函數詳情頁面,單擊函數配置頁簽,在地區,單擊編輯,然後在編輯函數層面板選擇+添加層 > 通過 ARN 添加層

構建自訂層安裝依賴

  • 通過控制台線上構建層

    登入Function Compute控制台,在左側導覽列,選擇進階功能 > 層管理。具體操作,請參見建立自訂層

    說明
    • 此方式僅支援Node.js和Python運行環境。

    • 此方式不支援包含系統動態連結程式庫(.so)的依賴,例如Node.js的依賴庫Puppeteer。如果依賴包含動態連結程式庫(.so),推薦使用Dockerfile檔案構建層。

  • 本地構建層

    您可以在本地構建直接構建自訂層。具體操作,請參見構建層的ZIP包。使用此方式需要確保本地的作業系統和處理器架構與Function Compute運行時環境完全一致,即架構為x86-64的Linux系統,或者安裝的依賴庫不依賴底層環境和處理器架構。否則,推薦您使用控制台線上構建層或者使用Dockerfile方式構建層。

    例如,Python的科學計算庫numpy對底層環境有依賴,如果使用M1晶片的Mac系統,不能使用本地構建方式安裝依賴。

  • 使用Dockerfile檔案構建層

    如果依賴包含底層動態連結程式庫,或者在本地安裝依賴失敗,可以使用Dockerfile的方式安裝。具體操作,請參見如何基於Dockerfile構建層

通過Function Compute控制台安裝依賴

通過打包依賴並上傳到控制台

  1. 將第三方依賴與代碼檔案打包。

    重要
    • 您需要進入代碼目錄,打包所有檔案。打包完成後,入口函數檔案需要位於包內的根目錄。

    • 不同系統下打包方式不同,請您根據實際情況選擇合適的打包方式。

  2. 登入Function Compute控制台,通過上傳 ZIP 包上傳檔案夾通過 OSS 上傳的方式上傳程式碼封裝,部署函數。

通過控制台Web IDE終端安裝依賴

  1. 登入Function Compute控制台,找到目標函數。

  2. 在函數詳情頁面,單擊函數代碼頁簽,然後在Web IDE介面,選擇Terminal > New Terminal,在終端視窗,執行安裝依賴的命令。

    以Python為例,執行以下命令安裝依賴。更多資訊,請參見部署程式碼封裝

    pip install -t . <PackageName>      # PackageName為依賴包的名稱 
  3. 安裝成功後,您的Web IDE目錄結構如下圖所示。install-rely

使用Serverless Devs安裝依賴

通過Function Compute的Serverless Devs,建立並部署函數。具體操作,請參見Serverless Devs常用命令