Benutzerdefinierte Container in Dataflow verwenden

Sie können die Laufzeitumgebung von Nutzercode in Dataflow-Pipelines anpassen, indem Sie ein benutzerdefiniertes Container-Image bereitstellen. Benutzerdefinierte Container werden für Pipelines unterstützt, die Dataflow Runner v2 verwenden.

Wenn Dataflow die Worker-VMs startet, werden Docker-Container-Images verwendet, um Container-SDK-Prozesse auf den Workern zu starten. Standardmäßig verwendet eine Pipeline ein vordefiniertes Apache Beam-Image. Sie können jedoch ein benutzerdefiniertes Container-Image für Ihren Dataflow-Job bereitstellen. Wenn Sie ein benutzerdefiniertes Container-Image angeben, startet Dataflow Worker, die das angegebene Image abrufen.

Benutzerdefinierte Container können aus folgenden Gründen verwendet werden:

  • Pipelineabhängigkeiten vorinstallieren, um die Startzeit des Workers zu verkürzen.
  • Pipelineabhängigkeiten vorinstallieren, die in öffentlichen Repositories nicht verfügbar sind.
  • Pipelineabhängigkeiten vorinstallieren, wenn der Zugriff auf öffentliche Repositories deaktiviert ist. Der Zugriff kann aus Sicherheitsgründen deaktiviert sein.
  • Große Dateien vorab bereitstellen, um die Startzeit des Workers zu reduzieren.
  • Drittanbieter-Software wird im Hintergrund ausgeführt.
  • Ausführungsumgebung anpassen.

Weitere Informationen zu benutzerdefinierten Containern in Apache Beam finden Sie im Leitfaden zu benutzerdefinierten Containern für Apache Beam. Beispiele für Python-Pipelines, die benutzerdefinierte Container verwenden, finden Sie unter Benutzerdefinierte Dataflow-Container.

Nächste Schritte