メインコンテンツまでスキップ

Databricks Asset Bundles をエアギャップ環境で動作するように設定

Databricks アセットバンドルは、外部ライブラリとツールに依存して適切に機能します。 これらの依存関係の場所 (URL) にアクセスできる必要があり、アクセス可能でなければバンドルの初期化は失敗します。 このため、インターネットにアクセスできないエアギャップ ネットワーク環境で Databricks アセット バンドルを使用する前に、Databricks CLI によって提供される Docker コンテナ イメージをダウンロードし、Docker を使用して Databricks アセット バンドルを管理する必要があります。

Docker コンテナイメージのダウンロード

Databricks CLI Docker コンテナー イメージは、ARM64 と AMD64 の CPU アーキテクチャをサポートしており、 Databricks CLI GitHub リポジトリで入手できます。 利用可能な最新のイメージをダウンロードするには、次のコマンドを実行します。

Bash
docker pull ghcr.io/databricks/cli:latest

特定の Databricks CLI バージョンに関連付けられているイメージをダウンロードする場合は、次に示すようにバージョンを指定します。

Bash
docker pull ghcr.io/databricks/cli:v0.218.0

Docker による Databricks アセットバンドルの管理

適切な Docker コンテナをダウンロードしたら、Docker CLI を使用して、直接または対話形式で databricks bundle コマンドを実行できます。

直接実行

bundleコマンドを直接実行するには、docker runを使用します。たとえば、次のコマンドは、 /my-bundleにあるバンドルをデプロイします。

sh
docker run -v /my-bundle:/my-bundle -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... --workdir /my-bundle ghcr.io/databricks/cli:latest bundle deploy

上記の例では、 -v /my-bundle:/my-bundle は同じバンドル名を使用して Docker コンテナーのファイル システムに my-bundle をマウントし、 -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... ホストと資格情報を環境変数として渡して Databricks CLI を認証し、 --workdir /my-bundle ghcr.io/databricks/cli:latest 現在の作業ディレクトリを /my-bundleに設定します。 その他の docker run コマンド オプションについては、 Docker のドキュメントを参照してください。

インタラクティブな実行

bundleコマンドを対話式に実行するには、まず docker run-it オプションと --entrypoint オプションを使用して、次に示すように、コンテナにアタッチされた統合 shU ターミナル セッションを起動します。

Bash
docker run -v /my-bundle:/my-bundle -e DATABRICKS_HOST=... -e DATABRICKS_TOKEN=... -it --entrypoint /bin/sh --workdir /my-bundle ghcr.io/databricks/cli:latest

Docker ターミナル セッションが開始されると、ターミナルで直接 bundle コマンドを実行できます。 次の例では、 my-bundleという名前のバンドルをデプロイします。

/my-bundle # databricks bundle deploy

ボリューム マウントは双方向で同期されるため、バンドルをローカルで変更し、この Docker ターミナル セッションを使用して bundle コマンドを実行できます。 この場合、docker run を再度実行する必要はありません。