本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。

部署程式碼封裝

更新時間:2025-01-15 19:40

本文以安裝第三方依賴emoji為例,介紹如何為您的Python代碼安裝依賴,打包並部署代碼至Function Compute

準備工作

  1. 建立一個用於測試的代碼目錄,如mycode
    • Linux或macOS系統

      您可以執行mkdir -p /tmp/mycode建立。

    • Windows系統

      在任意位置建立檔案夾,並將其命名為mycode即可。

  2. mycode目錄下,建立index.py檔案。
    檔案內容如下。
    from emoji import emojize
    def handler(event, context):
        return emojize(":thumbs_up:")

使用pip安裝依賴並部署代碼

前提條件

操作步驟

  1. mycode目錄下執行pip3 install emoji -t .安裝emoji依賴庫到目前的目錄。
  2. 打包mycode目錄下所有檔案。
    • Linux或macOS系統

      進入mycode目錄,執行zip code.zip -r ./*

      說明
      請確保您具有該目錄的讀寫權限。
    • Windows系統

      進入mycode目錄,選中所有檔案,單擊滑鼠右鍵,選擇打包為ZIP包。

  3. Function Compute控制台找到目標函數,然後在函數詳情頁面的右上方,單擊上傳代碼上傳您上一步打包的ZIP包。
重要
由於Function Compute的運行環境是Linux系統,您在Windows系統或macOS系統安裝emoji依賴庫時如果帶有二進位檔案,會導致您的程式碼封裝上傳到Function Compute後運行失敗。因此,建議您使用WebIDE打包函數第三方依賴或者使用Serverless Devs工具安裝依賴並部署專案

使用Serverless Devs工具安裝依賴並部署專案

前提條件

操作步驟

  1. 執行cd /tmp/mycode進入mycode目錄。
  2. 新增s.yaml檔案。
    編寫檔案內容樣本如下。
    edition: 1.0.0          #  命令列YAML規範版本,遵循語義化版本(Semantic Versioning)規範
    name: fcDeployApp       #  專案名稱
    access: "default"       #  密鑰別名
    
    services:
      fc-deploy-test: #  服務名稱
        component: fc  # 組件名稱
        props: #  組件的屬性值
          region: cn-shanghai
          service:
            name: fctest
            description: 'test'
            internetAccess: true
          function:
            name: emoji
            description: this is a emoji
            runtime: python3
            codeUri: ./
            handler: index.handler
            memorySize: 128
            timeout: 6
  3. 新增requirements.txt檔案。
    編寫檔案內容如下:
    emoji==2.0.0
  4. 執行sudo s build --use-docker安裝依賴。
    執行完成後,會在mycode目錄下產生一個.s目錄,依賴被安裝到.s/build/artifacts/{serviceName}/{functionName}目錄下。
  5. 執行sudo s deploy部署專案。
    執行完成後,即可部署函數到Function Compute

更多資訊

您也可以使用Function Compute的層功能安裝依賴,推薦您使用官方公用層或線上構建依賴層。具體操作,請參見以下文檔。
  • 本頁導讀 (1, M)
  • 準備工作
  • 使用pip安裝依賴並部署代碼
  • 前提條件
  • 操作步驟
  • 使用Serverless Devs工具安裝依賴並部署專案
  • 前提條件
  • 操作步驟
  • 更多資訊
文檔反饋