共用方式為


部署 Databricks 應用程式

在建立並開發 Azure Databricks 應用程式後,部署後,讓它能在 Azure Databricks 工作空間中存取。 部署會建置你的應用程式,安裝相依性,並依照專案文件中定義的設定執行。 你可以使用 Azure Databricks 介面或 Databricks CLI 來部署應用程式。

備註

如果您從範本建立應用程式,Azure Databricks 會在您第一次建立應用程式時自動部署它。 不過,在進行變更之後,您仍然可以稍後重新部署它。 請參閱 從範本建立 Databricks 應用程式

部署邏輯

Databricks Apps 支援部署使用 Python、Node.js或兩者組合的應用程式。 這允許彈性架構,例如具有 Node.js 前端和 Python 後端。

在部署期間,建置過程會檢查位於應用程式目錄根目錄的 package.json 檔案,以確定是否使用 Node.js。 如果有的話,它包括 Node.js 特定的建置步驟與 Python 步驟。 部署邏輯會遵循下列模式:

如果有package.json

  1. npm install執行
  2. 執行 pip install -r requirements.txt (如果有的話)
  3. 執行 npm run build (如果 build 中有定義的 package.json 腳本)
  4. 執行 app.yaml 中指定的命令,如果未指定任何命令,則執行 npm run start

備註

如果未在 中 app.yaml指定任何命令,則即使應用程式包含 Python 程式代碼,Azure Databricks 仍會 npm run start執行 。 若要同時執行 Python 和 Node.js 程式,請定義自定義start腳本,該腳本使用像concurrently這類工具來啟動兩者。 例如: concurrently "npm run start:node" "python my_app.py"

如果 package.json 不存在

  1. 執行 pip install -r requirements.txt (如果有的話)
  2. 執行 app.yaml 中指定的命令,如果未指定任何命令,則執行 python <my-app>.py

準備部署

部署應用程式之前,請確認您的專案包含必要的元件:

此外,請確定 App Service 主體 可以存取原始碼資料夾。

選擇部署來源

你可以從以下來源部署 Databricks 應用程式:

  • Workspace 資料夾 - 將應用程式檔案上傳到 Workspace 資料夾,然後從那裡部署。 這是標準的部署方式。
  • Git 倉庫 - 為應用程式配置 Git 倉庫並直接部署,無需上傳檔案到工作區。 每次部署時,應用程式都會從已設定的 Git 參考(分支、標籤或提交)讀取程式碼。 所有主要的 Git 供應商都被支援,包括 GitHub、GitLab 和 Bitbucket。 欲了解完整支援的供應商清單,請參閱 「連接您的 Git 供應商至 Databricks」。

你可以隨時在 Workspace 和 Git 來源之間切換,針對同一個應用程式。

部署應用程式

以下章節說明如何從工作區資料夾或直接從 Git 儲存庫部署。

從工作區資料夾部署

Databricks 使用者介面

若要從 Azure Databricks UI 部署應用程式:

  1. 將應用程式檔案上傳至您的 Azure Databricks 工作區。 如需指示,請參閱 匯入檔案
  2. 在側邊欄中按下 計算圖示 [計算]
  3. 移至 [ 應用程式] 索引標籤,然後按下 [ 名稱 ] 資料行中應用程式的連結。
  4. 按兩下 [部署 ],然後選取您上傳應用程式檔案之工作區中的資料夾。
  5. 按一下 選取,然後 部署
  6. 檢閱設定,然後按兩下 [ 部署]。

Databricks 命令行介面

若要使用 CLI 部署應用程式:

  1. 打開終端機,然後導航到包含你應用程式檔案的目錄。

  2. 請使用指令 sync 將你的應用程式檔案上傳到 Azure Databricks 工作區。 將路徑更改為您要上傳檔案的工作區位置。

    databricks sync --watch . /Workspace/Users/my-email@org.com/my-app
    

    這個 --watch 旗標會讓同步過程持續運作,並在你修改本地檔案時自動上傳變更。 要排除特定檔案或目錄同步,請將它們加入本地應用程式目錄中的檔案 .gitignore 。 常見的排除檔案包括 node_modules/.env__pycache__/.DS_Store,以及任何大型資料檔案或建置工件。

  3. 請透過查看工作區中的檔案來驗證上傳。 在側邊欄點選「Workspace Icon Workspace」,然後導覽到你為應用程式建立的目錄。

  4. 請執行以下指令部署應用程式。 用你的數值替換應用程式名稱和原始碼路徑。

    databricks apps deploy my-app-name \
       --source-code-path /Workspace/Users/my-email@org.com/my-app
    

    CLI 會顯示部署進度並確認應用程式何時執行。

從 Git 倉庫部署

這很重要

這項功能位於 測試版 (Beta) 中。 如果管理員停用了這個功能,從 Git 部署的現有應用程式會繼續執行,但你無法重新部署或重新啟動這些應用程式,除非你重新啟用預覽或將該儲存庫從應用程式中移除。

要從 Git 倉庫部署應用程式,先在應用程式層級新增該倉庫,然後在部署時指定 Git 參考。 你的 Git 儲存庫必須包含應用程式檔案,包括 app.yaml、相依關係和入口。 所有主要的 Git 供應商都被支援,包括 GitHub、GitLab 和 Bitbucket。

要從 Git 配置並部署應用程式:

  1. 把你的應用程式檔案上傳到 Git 倉庫。
  2. 在你的 Azure Databricks 工作區,點選側邊欄的 運算圖示「運算 」。
  3. 應用程式 標籤,選擇現有應用程式編輯或點 選建立應用程式
  4. 配置 Git 儲存庫 步驟中,輸入 Git 儲存庫 URL(例如 https://github.com/org/repo),並選擇 Git 提供者。
  5. 點擊 建立應用程式儲存 ,返回應用程式詳情頁面。
  6. 對於私人倉庫,應用程式的服務主體必須設定 Git 憑證。 在應用程式詳情頁面,點選 「設定 Git 憑證」。 或者,編輯應用程式並在 配置 Git 儲存庫 步驟中新增憑證。 你必須在應用程式上取得 CAN MANAGE 權限才能新增 Git 憑證。 關於每個提供者的說明,請參見 「Connect your Git provider to Databricks」。

這很重要

為了安全起見,Azure Databricks 會在你更改部署來源(從 Git 改為 Workspace,或從 Workspace 改為 Git)或更改 Git 儲存庫時,刪除所有與應用程式服務主體相關的 Git 憑證。 只更改 Git 參考並不會刪除憑證。 更改部署來源或儲存庫後,你必須重新設定 Git 憑證才能再次從 Git 部署。

備註

應用程式開發者只有在啟用 Git 部署測試版功能時,才會自動獲得 CAN MANAGE 服務主體的權限。 如果你在功能被關閉時創建應用程式,可能沒有權限新增 Git 憑證。

服務主體支援每個提供者共用一個 Git 憑證。 更新憑證,例如透過帳號主控台,會替換該提供者現有的憑證,並影響所有使用該服務主體的應用程式。

接著,部署應用程式:

  1. 在應用程式細節頁面,點選 部署
  2. Git 中選擇。
  3. 參考 Git 時,輸入分支名稱、標籤或提交 SHA(例如 main、 , v1.0.0或提交雜湊)。
  4. 對於 參考類型,請指定參考類型,例如分支、標籤或提交。
  5. 按一下[部署]

對於分支或標籤的引用,Azure Databricks 會部署該分支或標籤中最新的提交記錄。 對於提交 SHA 的參考,Azure Databricks 總是部署該特定的提交。 如果服務主體的 Git 憑證無效或過期,部署即告失敗。

部署後行為

部署完成後,Azure Databricks 會根據你command檔案中定義app.yaml的設定啟動你的應用程式,或預設執行 python app.py。 應用程式詳情頁面顯示目前狀態,並提供日誌、部署歷史及環境資訊的存取權限。

在應用程式部署之後檢視應用程式詳細數據頁面

若要檢視已部署應用程式的輸出,請按下應用程式連結。

移至 [ 記錄] 索引標籤以進行偵錯和運行時間監視。 請參閱 Databricks 應用程式的記錄和監視

更新或重新部署應用程式

在修改原始碼或設定後重新部署你的應用程式。 重新部署時會套用最新的更新,而不必重新建立應用程式。 你可以隨時從工作空間或 Git 倉庫重新部署。

從工作區資料夾重新部署

若要從工作區資料夾重新部署:

  1. 更新你在工作區資料夾裡的應用程式檔案。
  2. 選擇應用程式並點擊部署
  3. 如果原始碼路徑改變或你是從 Git 來源轉換,點選 部署 旁邊的箭頭,選擇 使用不同原始碼部署

從 Git 儲存庫重新部署

從 Git 倉庫重新部署:

  1. 把你的變更推送到 Git 倉庫。
  2. 在你的 Azure Databricks 工作區中,選擇你的應用程式並點 選部署
  3. 如果 Git 參考資料改變或你是從工作區來源切換,點選部署旁邊的箭頭,選擇使用其他來源部署

要更改 Git 儲存庫或憑證,請編輯應用程式設定。 從應用程式中移除 Git 儲存庫會強制從工作區部署。

這很重要

更改 Git 儲存庫或在部署來源(Git 與工作空間)間切換,會刪除應用程式服務主體的所有 Git 憑證。 你必須在再次從 Git 部署前重新設定憑證。

排除部署問題

如果您的應用程式無法部署或無法如預期運行,請嘗試以下故障排除步驟:

  • 檢查日誌是否有錯誤訊息或執行時輸出。
  • 驗證 app.yaml 語法和設定。
  • 確認 env 區段中的機密資訊和環境變數是否已正確解析。
  • 確認所有必需的相依性都已包含或安裝。

對於 Git 儲存庫部署:

  • 對於私人倉庫,請確認應用程式的服務主體是否設定了 Git 憑證。
  • 請確認 Git 儲存庫的網址是否正確。
  • 確認 Git 參考(分支、標籤或提交)是否存在於倉庫中。

後續步驟