Freigeben über


Bereitstellen einer Databricks-App

Nachdem Sie Ihre Azure Databricks-App erstellt und entwickelt haben, stellen Sie sie bereit, um sie im Azure Databricks Arbeitsbereich zugänglich zu machen. Die Bereitstellung erstellt Ihre App, installiert Abhängigkeiten und führt sie mithilfe der in Ihren Projektdateien definierten Konfiguration aus. Sie können Apps mithilfe der Azure Databricks UI oder der Databricks CLI bereitstellen.

Hinweis

Wenn Sie eine App aus einer Vorlage erstellen, wird sie von Azure Databricks automatisch bereitgestellt, sobald Sie sie das erste Mal erstellen. Sie können sie jedoch später noch erneut bereitstellen, nachdem Sie Änderungen vorgenommen haben. Siehe Erstellen einer Databricks-App aus einer Vorlage.

Bereitstellungslogik

Databricks-Apps unterstützen die Bereitstellung von Anwendungen, die entweder Python, Node.jsoder eine Kombination aus beiden verwenden. Dies ermöglicht flexible Architekturen, z. B. ein Node.js-Frontend mit einem Python Back-End.

Während der Bereitstellung überprüft der Buildprozess eine package.json Datei im Stammverzeichnis Ihres App-Verzeichnisses, um festzustellen, ob Node.js verwendet wird. Wenn vorhanden, enthält sie node-spezifische Build-Schritte zusammen mit Python-Schritten. Die Bereitstellungslogik folgt diesem Muster:

Wenn package.json vorhanden:

  1. Führen Sie npm install aus.
  2. Installieren Python Abhängigkeiten:
    • Wenn requirements.txt vorhanden ist, führen Sie pip install -r requirements.txt aus
    • Wenn requirements.txt nicht vorhanden ist und sowohl pyproject.toml als auch uv.lock vorhanden sind, führen Sie uv sync aus, um Abhängigkeiten zu installieren.
  3. Führen Sie npm run build aus (wenn ein build Skript in package.json definiert ist)
  4. Führen Sie den angegebenen Befehl in app.yaml aus, oder npm run start aus, wenn kein Befehl angegeben ist

Hinweis

Wenn in app.yaml kein Befehl angegeben ist, führt Azure Databricks npm run start aus, auch wenn die App Python Code enthält. Um sowohl Python- als auch Node.js-Prozesse auszuführen, definieren Sie ein benutzerdefiniertes skript start, das ein Tool wie concurrently zum Starten verwendet. Beispiel: concurrently "npm run start:node" "python my_app.py".

Wenn package.json nicht vorhanden:

  1. Installieren Python Abhängigkeiten:
    • Wenn requirements.txt vorhanden ist, führen Sie pip install -r requirements.txt aus
    • Wenn requirements.txt nicht vorhanden ist und sowohl pyproject.toml als auch uv.lock vorhanden sind, führen Sie uv sync aus, um Abhängigkeiten zu installieren.
  2. Führen Sie den angegebenen Befehl in app.yaml aus, oder python <my-app>.py aus, wenn kein Befehl angegeben ist

Vorbereiten der Bereitstellung

Bevor Sie Ihre App bereitstellen, stellen Sie sicher, dass Ihr Projekt die erforderlichen Komponenten enthält:

Stellen Sie außerdem sicher, dass der App-Dienstprinzipal Zugriff auf den Quellcodeordner hat.

Auswählen einer Bereitstellungsquelle

Sie können Databricks-Apps aus den folgenden Quellen bereitstellen:

  • Arbeitsbereichsordner – Laden Sie App-Dateien in einen Arbeitsbereichsordner hoch, und stellen Sie von dort aus bereit. Dies ist die standardmäßige Bereitstellungsmethode.
  • Git-Repository – Konfigurieren Sie ein Git-Repository für eine App, und stellen Sie es direkt bereit, ohne Dateien in den Arbeitsbereich hochzuladen. Die App liest Code aus der konfigurierten Git-Referenz (Verzweigung, Tag oder Commit) jedes Mal aus, wenn Sie deployen. Sie können auch einen Quellcodepfad angeben, der aus einem bestimmten Verzeichnis innerhalb des Repositorys bereitgestellt werden soll. Alle wichtigen Git-Anbieter werden unterstützt, einschließlich GitHub, GitLab und Bitbucket. Eine vollständige Liste der unterstützten Anbieter finden Sie unter Verbinden Ihres Git-Anbieters mit Databricks.

Sie können jederzeit zwischen Arbeitsbereichs- und Git-Quellen für dieselbe App wechseln, es sei denn, ein Arbeitsbereichsadministrator erzwingt Git-only-Bereitstellungen. Siehe Erzwingen von Nur-Git-Bereitstellungen.

Erzwingen von Nur-Git-Bereitstellungen

Arbeitsbereichsadministratoren können erfordern, dass alle Apps in einem Arbeitsbereich aus Git-Repositorys bereitgestellt werden. Um diese Einstellung zu aktivieren, wechseln Sie zu Einstellungen>, Entwicklung> und Apps, und aktivieren Sie "Nur App-Bereitstellungen von Git zulassen". Diese Einstellung ist standardmäßig deaktiviert.

Wenn Sie diese Einstellung aktivieren:

  • Benutzer müssen ein Git-Repository konfigurieren, bevor Sie eine App erstellen.
  • Benutzer können nur über Git bereitstellen, nicht aus Arbeitsbereichsordnern.
  • Databricks deaktiviert App-Vorlagen im Arbeitsbereich.
  • Benutzer können ein Git-Repository nicht aus Apps entfernen, die über eines verfügen.
  • Vorhandene Apps werden weiterhin ausgeführt, benutzer können sie jedoch nicht erneut bereitstellen oder starten, es sei denn, die App verfügt über ein Git-Repository.

Bereitstellen der App

In den folgenden Abschnitten wird beschrieben, wie Sie aus einem Arbeitsbereichsordner oder direkt aus einem Git-Repository deployen.

Bereitstellen aus einem Workspace-Verzeichnis

Databricks UI

So stellen Sie eine App über die Azure Databricks UI bereit:

  1. Laden Sie die App-Dateien in Ihren Azure Databricks Arbeitsbereich hoch. Anweisungen finden Sie unter Importieren einer Datei.
  2. Klicken Sie auf ComputesymbolCompute in der Randleiste.
  3. Wechseln Sie zur Registerkarte "Apps ", und klicken Sie in der Spalte "Name " auf den Link zu Ihrer App.
  4. Klicken Sie auf "Bereitstellen" , und wählen Sie den Ordner in Ihrem Arbeitsbereich aus, in den Sie die App-Dateien hochgeladen haben.
  5. Klicken Sie auf "Auswählen" und dann auf "Bereitstellen".
  6. Überprüfen Sie die Konfiguration, und klicken Sie auf "Bereitstellen".

Databricks-Befehlszeilenschnittstelle

So stellen Sie eine App mit der CLI bereit:

  1. Öffnen Sie ein Terminal, und navigieren Sie zu dem Verzeichnis, das Ihre App-Dateien enthält.

  2. Laden Sie Ihre App-Dateien mithilfe des Befehls sync in den Azure Databricks Arbeitsbereich hoch. Ersetzen Sie den Pfad durch den Arbeitsbereichsspeicherort, an dem Sie die Dateien hochladen möchten.

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

    Das --watch Kennzeichen führt die Ausführung des Synchronisierungsprozesses durch und lädt änderungen automatisch hoch, wenn Sie Dateien lokal ändern. Um bestimmte Dateien oder Verzeichnisse von der Synchronisierung auszuschließen, fügen Sie sie einer .gitignore Datei in Ihrem lokalen App-Verzeichnis hinzu. Allgemein auszuschließende Dateien sind node_modules/, .env, __pycache__/, .DS_Store sowie alle großen Daten oder Build-Artefakte.

  3. Überprüfen Sie den Upload, indem Sie die Dateien in Ihrem Arbeitsbereich anzeigen. Klicken Sie auf ArbeitsbereichssymbolArbeitsbereich im Seitenbereich und navigieren Sie zu dem Verzeichnis, das Sie für Ihre App erstellt haben.

  4. Stellen Sie die App bereit, indem Sie den folgenden Befehl ausführen. Ersetzen Sie den App-Namen und den Quellcodepfad durch Ihre Werte.

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

    Die CLI zeigt den Bereitstellungsfortschritt an und bestätigt, wann die App ausgeführt wird.

Bereitstellen aus einem Git-Repository

Um eine App aus einem Git-Repository bereitzustellen, fügen Sie das Repository auf App-Ebene hinzu, und geben Sie dann die Git-Referenz an, wenn Sie sie bereitstellen. Ihr Git-Repository muss die App-Dateien enthalten, einschließlich app.yaml, der Abhängigkeiten und des Einstiegspunkts. Alle wichtigen Git-Anbieter werden unterstützt, einschließlich GitHub, GitLab und Bitbucket. Sie können auch Git-gesicherte Apps mithilfe der Benutzeroberfläche, der CLI, der API oder deklarativer Automatisierungspakete bereitstellen.

So konfigurieren und bereitstellen Sie eine App über Git:

  1. Laden Sie Ihre App-Dateien in ein Git-Repository hoch.
  2. Klicken Sie in Ihrem Azure Databricks Arbeitsbereich auf SymbolCompute in der Randleiste.
  3. Wechseln Sie zur Registerkarte "Apps ", und wählen Sie entweder eine vorhandene App aus, um sie zu bearbeiten oder auf "App erstellen" zu klicken.
  4. Geben Sie im Schritt " Git-Repository konfigurieren " die Git-Repository-URL (z. B. ) ein, https://github.com/org/repound wählen Sie einen Git-Anbieter aus.
  5. Klicken Sie auf "App erstellen" oder " Speichern ", um zur Seite mit den App-Details zurückzukehren.
  6. Für private Repositories muss der Dienstprinzipal der App mit einer Git-Anmeldeinformation konfiguriert sein. Klicken Sie auf der Seite mit den App-Details auf " Git-Anmeldeinformationen konfigurieren", oder bearbeiten Sie die App, und fügen Sie die Anmeldeinformationen im Schritt " Git-Repository konfigurieren" hinzu. Sie müssen CAN MANAGE Berechtigungen für die App besitzen, um Git-Anmeldeinformationen hinzuzufügen. Öffentliche Repositorys erfordern keine Git-Anmeldeinformationen. Anweisungen für jeden Anbieter finden Sie unter Verbinden Ihres Git-Anbieters mit Databricks.

Stellen Sie dann die App bereit:

  1. Klicken Sie auf der Seite „App-Details“ auf „Bereitstellen“.
  2. Wählen Sie aus Git aus.
  3. Geben Sie für Git-Referenz den Branch-Namen, das Tag oder das Commit-SHA ein (z. B. main, v1.0.0 oder einem Commit-Hash).
  4. Geben Sie für den Referenztyp den Typ der Referenz an, z. B. einen Branch, ein Tag oder einen Commit.
  5. (Optional) Geben Sie für den Quellcodepfad einen Pfad zu einem bestimmten Verzeichnis innerhalb des Repositorys ein. Die App behandelt dieses Verzeichnis als Verzeichnis der obersten Ebene und kann nicht auf Dateien außerhalb des Verzeichnisses zugreifen. Wenn Sie keinen Pfad angeben, verwendet Databricks den Repositorystamm.
  6. Klicken Sie auf "Bereitstellen".

Für Branch- oder Tagverweise stellt Azure Databricks den letzten Commit aus diesem Branch oder Tag bereit. Bei Commit-SHA-Verweisen stellt Azure Databricks diesen spezifischen Commit immer bereit. Wenn die Git-Anmeldeinformationen des Dienstprinzipals ungültig oder abgelaufen sind, schlägt die Bereitstellung fehl.

Hinweis

Apps, die erstellt wurden, bevor die Git-Bereitstellung allgemein verfügbar wurde, erteilen nicht automatisch Erstellerberechtigungen CAN MANAGE für den Dienstprinzipal der App. Wenn Sie einer älteren App Git-Credentials hinzufügen müssen, bitten Sie einen Workspace-Administrator, Ihnen CAN MANAGE Berechtigungen für den Dienstprinzipal zu erteilen.

Dienstprinzipale unterstützen eine Git-Anmeldeinformation pro Anbieter. Wenn Sie die Anmeldeinformationen an anderer Stelle aktualisieren, z. B. über die Kontokonsole, werden die vorhandenen Anmeldeinformationen für diesen Anbieter ersetzt.

Verhalten nach der Bereitstellung

Nach Abschluss der Bereitstellung startet Azure Databricks Ihre App basierend auf dem definierten command in der Datei app.yaml oder es wird standardmäßig python app.py ausgeführt. Die Seite "App-Details" zeigt den aktuellen Status an und bietet Zugriff auf Protokolle, Bereitstellungsverlauf und Umgebungsinformationen.

Ansicht der App-Details-Seite nach der Bereitstellung der App

Um die Ausgabe der bereitgestellten App zu sehen, klicken Sie auf den App-Link.

Wechseln Sie zur Registerkarte "Protokolle " zum Debuggen und zur Laufzeitüberwachung. Siehe Protokollierung und Überwachung für Databricks-Apps.

Aktualisieren oder erneutes Bereitstellen der App

Stellen Sie Ihre App erneut bereit, nachdem Sie Änderungen am Quellcode oder an der Konfiguration vorgenommen haben. Durch die erneute Bereitstellung werden Ihre neuesten Updates angewendet, ohne die App neu zu erstellen. Sie können jederzeit über den Arbeitsbereich oder das Git-Repository erneut bereitstellen.

Erneute Bereitstellung aus einem Arbeitsbereichsordner

So stellen Sie eine erneute Bereitstellung aus einem Arbeitsbereichsordner her:

  1. Aktualisieren Sie Ihre App-Dateien im Arbeitsbereichsordner.
  2. Wählen Sie die App aus, und klicken Sie auf "Bereitstellen".
  3. Wenn sich der Quellcodepfad geändert hat oder Sie von einer Git-Quelle wechseln, klicken Sie auf den Pfeil neben "Bereitstellen" , und wählen Sie "Bereitstellen mit einer anderen Quelle" aus.

Wiederbereitstellung aus einem Git-Repository

So stellen Sie aus einem Git-Repository erneut bereit:

  1. Pushen Sie Ihre Änderungen an das Git-Repository.
  2. Wählen Sie in Ihrem Azure Databricks Arbeitsbereich Ihre App aus, und klicken Sie auf Deploy.
  3. Wenn sich der Git-Verweis geändert hat oder Sie von einer Arbeitsbereichsquelle wechseln, klicken Sie auf den Pfeil neben "Bereitstellen" , und wählen Sie "Bereitstellen mit einer anderen Quelle" aus.

Um das Git-Repository oder die Anmeldeinformationen zu ändern, bearbeiten Sie die App-Konfiguration. Um das Git-Repository mithilfe der CLI oder API zu aktualisieren, verwenden Sie den Befehl "Create-update ". Durch das Entfernen des Git-Repositorys aus der App wird die Bereitstellung aus dem Arbeitsbereich erzwungen.

Von Bedeutung

Wenn Sie das Git-Repository ändern oder zwischen Bereitstellungsquellen (Git und Arbeitsbereich) wechseln, werden alle Git-Anmeldeinformationen für den Dienstprinzipal der App gelöscht. Das Ändern der Git-Referenz löscht keine Anmeldeinformationen. Sie müssen die Zugangsdaten neu konfigurieren, bevor Sie die Bereitstellung von Git erneut durchführen.

Behandeln von Bereitstellungsproblemen

Wenn Ihre App nicht wie erwartet bereitgestellt wird oder nicht wie erwartet ausgeführt wird, führen Sie die folgenden Schritte zur Problembehandlung aus:

  • Überprüfen Sie Protokolle auf Fehlermeldungen oder Laufzeitausgabe.
  • Überprüfen Sie die app.yaml-Syntax und die Einstellungen.
  • Überprüfen Sie, ob geheime Schlüssel und Umgebungsvariablen env im Abschnitt ordnungsgemäß aufgelöst werden.
  • Vergewissern Sie sich, dass alle erforderlichen Abhängigkeiten enthalten oder installiert sind.

Für Git-Repositorybereitstellungen:

  • Überprüfen Sie bei privaten Repositories, ob das Dienstkonto der App über Git-Anmeldeinformationen konfiguriert ist.
  • Stellen Sie sicher, dass die Git-Repository-URL korrekt ist und dass der Git-Verweis (Verzweigung, Tag oder Commit) im Repository vorhanden ist.
  • Wenn ein Arbeitsbereichsadministrator Git-only-Bereitstellungen erzwingt, können Sie eine App nur bereitstellen oder starten, wenn sie ein Git-Repository konfiguriert hat.
  • Wenn Sie aus der Befehlszeilenschnittstelle (CLI), API oder mit deklarativen Automatisierungspaketen bereitstellen, erstellen Sie zuerst die Anwendung; fügen Sie dann die Git-Zugangsdaten dem Dienstkonto der Anwendung hinzu.

Nächste Schritte