Databricks Git フォルダー ( Repos ) をセットアップする

バージョン管理のために Databricks Git フォルダー (旧名 Repos) をセットアップする方法を学びます。 Databricks で Git フォルダーをセットアップすると、Databricks UI からクローン、チェックアウト、コミット、プッシュ、プル、ブランチ管理などの一般的な Git 操作を実行できるようになります。 Databricks でノートブックやファイルを使用して開発するときに、変更の差分を確認することもできます。

ユーザー設定の構成

Databricks Git フォルダーは、個人アクセスマラソン (PAT) または同等の資格情報を使用して Git プロバイダーで認証し、クローン、プッシュ、プルなどの操作を実行します。 Git フォルダーを使用するには、まず Git PAT と Git プロバイダーのユーザー名を Databricks に追加する必要があります。 「Git 資格情報の構成とリモート リポジトリの Databricks への接続」を参照してください。

パブリックリモートリポジトリは、Git認証情報(個人用アクセストークンとユーザー名)なしでクローニングできます。 パブリック・リモート・リポジトリを変更したり、プライベート・リモート・リポジトリをクローニングまたは変更したりするには、Gitプロバイダのユーザー名と、リモート・リポジトリに対する 書き込み (またはそれ以上)の権限を持つPATが必要です。

Git フォルダーはデフォルトで有効になっています。 Git フォルダーのサポートの有効化または無効化の詳細については、 「Databricks Git フォルダー機能を有効または無効にする」を参照してください。

Databricks で Git 認証情報を追加または編集する

重要

Databricks Git フォルダーは、ユーザーごと、ワークスペースごとに 1 つの Git 認証情報のみをサポートします。

  1. 画面の右上にあるアカウント名の横にある下矢印を選択し、 [設定]を選択します。

  2. [リンクされたアカウント] タブを選択します。

  3. 初めて資格情報を追加する場合は、画面の指示に従います。

    以前にクレデンシャルを入力したことがある場合は、[ Config ] > [ Edit ] をクリックして、次の手順に進みます。

  4. [Git プロバイダー] ドロップダウンで、プロバイダー名を選択します。

  5. Git ユーザー名または Eメールを入力します。

  6. [ トークン] フィールドに、個人用アクセストークン (PAT) または Git プロバイダーからのその他の資格情報を追加します。 詳細については、「Git 資格情報の構成とリモート repo への Databricks の接続」を参照してください。

    重要

    Databricks では、すべての個人用アクセストークンに有効期限を設定することをお勧めします。

    Azure DevOps の場合、Git 統合は Microsoft Entra ID トークンをサポートしていません。 Azure DevOps個人アクセス ノートを使用する必要があります。 「DevOps トークンを使用して Azure DevOps プロジェクトに接続する」を参照してください。

    組織で GitHub で SAML SSO が有効になっている場合は、 SSO に対して個人用アクセストークンを承認します。

  7. [Git プロバイダーのユーザー名] フィールドにユーザー名を入力します。

  8. [保存]をクリックします。

Databricks repo API を使用して、Git PAT トークンとユーザー名を Databricks に保存することもできます。

Databricks Git フォルダーと Git プロバイダー間のネットワーク接続

Git フォルダーが機能するには、Git プロバイダーへのネットワーク接続が必要です。 通常、これはインターネット上にあり、箱から出してすぐに機能します。 ただし、アクセスを制御するために Git プロバイダーに追加の制限を設定している可能性があります。 たとえば、IP 許可リストを用意している場合や、GitHub Enterprise (GHE)、Bitbucket Server (BBS)、Gitlab Self-managed などのサービスを使用して独自のオンプレミス Git サーバーをホストしている場合があります。 ネットワークのホスティングと構成によっては、Git サーバーにインターネット経由でアクセスできない場合があります。

  • Git サーバーがインターネットにアクセスできるが、GitHub 許可リストなどの IP 許可リストが使える場合は、Databricks コントロール プレーン NAT IP を Git サーバーの IP 許可リストに追加する必要があります。 リージョン別のコントロール プレーン NAT IP アドレスの一覧については、「 Databricks クラウドとリージョン」 を参照してください。 Databricks ワークスペースがあるリージョンの IP を使用します。

  • Git サーバーをプライベートでホストしている場合は、 「Databricks Git フォルダーのプライベート Git 接続のセットアップ (Repos)」を読むか、アクセスのためのオンボーディング手順について Databricks アカウント チームに問い合わせてください。

Git フォルダーのセキュリティ機能

Databricks Git フォルダーには多くのセキュリティ機能があります。 次のセクションでは、それらの設定と使用について説明します。

  • 暗号化された Git 資格情報の使用

  • 許可リスト

  • ワークスペースのアクセス制御

  • 監査ログ

  • シークレットの検出

独自のキーを使用する: Git 資格情報を暗号化する

AWS キー管理サービスを使用して、Git 個人用アクセストークン (PAT) またはその他の Git 認証情報を暗号化できます。 暗号化サービスのキーの使用は、顧客管理キー (CMK) または独自のキー持ち込み (BYOK) と呼ばれます。

詳細については、 「マネージド サービスの顧客管理キー」を参照してください。

許可リスト内の URL に使用を制限する

ワークスペース管理者は、ユーザーがクローンを作成およびコミット&プッシュできるリモートリポジトリを制限できます。 これにより、コードの流出を防ぐことができます。たとえば、許可リストの制限を有効にしている場合、ユーザーは任意のリポジトリにコードをプッシュできません。 また、クローン操作を許可されたリポジトリのリストに制限することで、ユーザーがライセンスのないコードを使用できないようにすることもできます。

許可リストを設定するには:

  1. 設定ページに移動します。

  2. [ワークスペース管理]タブをクリックします (デフォルトで開きます)。

  3. 「開発」セクションで、 「Git URL 許可リスト許可」からオプションを選択します。

    • 無効 (制限なし): 許可リストに対するチェックはありません。

    • クローン、コミット、プッシュを許可された Git リポジトリに制限する: クローン、コミット、プッシュ操作は、許可リスト内のリポジトリ URL に対してのみ許可されます。

    • 許可された Git リポジトリへのコミットとプッシュのみを制限する: コミットおよびプッシュ操作は、許可リスト内のリポジトリ URL に対してのみ許可されます。 クローン操作とプル操作は制限されません。

    ユーザーの Git アクセスを設定するために使用される、「管理者設定」の「開発」ペイン
  4. 「Git URL 許可リスト: 空のリスト」の横にある「編集」ボタンをクリックし、URL プレフィックスのカンマ区切りリストを入力します。

    開発管理者設定の [許可リストの編集] ボタン
  5. [保存]をクリックします。

  • 保存したリストは、保存された URL プレフィックスの既存のセットを上書きします。

  • 変更が有効になるまでに最大 15 分かかることがあります。

すべてのリポジトリへのアクセスを許可する

既存の許可リストを無効にし、すべてのリポジトリへのアクセスを許可するには、次のようにします。

  1. 設定ページに移動します。

  2. 「ワークスペース管理」タブをクリックします。

  3. [開発]セクションの[Git URL 許可リストの許可] で、 [無効にする (制限なし)]を選択します。

ワークスペース内のリポジトリへのアクセスを制御する

アクセス制御は、 プレミアムプラン以上でのみ利用できます。

リポジトリのアクセス許可を設定してアクセスを制御します。 リポジトリの権限は、そのリポジトリ内のすべてのコンテンツに適用されます。 ファイルには、NO PERMISSIONS、CAN READ、CAN RUN、CAN EDIT、CAN MANAGEの 5 つの権限レベルを割り当てることができます。

Git フォルダーの権限の詳細については、 「Git フォルダー ACL」を参照してください。

(オプション)エンタープライズ Git サーバーのプロキシを設定する

もしあなたの会社が GitHub Enterprise や Azure DevOps Server などのオンプレミスのエンタープライズ Git サービスを使用している場合は、 Databricks Git Server Proxyを使用して、Databricks ワークスペースを、それが提供するリポジトリに接続できます。

監査ログ

監査ログを有効にすると、Git フォルダーを操作したときに監査イベントがログに記録されます。 たとえば、Git フォルダーを作成、更新、または削除したとき、ワークスペースに関連付けられているすべての Git フォルダーを一覧表示したとき、および Git フォルダーとリモート Git リポジトリ間で変更を同期したときに、監査イベントがログに記録されます。

シークレットの検出

Git フォルダーは、プレフィックスAKIAで始まるアクセス キー ID のコードをスキャンし、コミットする前にユーザーに警告します。

リポジトリ構成ファイルを使用する

各ノートブックの設定は、手動で作成した .databricks/commit_outputs ファイルの リポジトリに追加できます。

出力を含めるノートブックを、 gitignore パターンに似たパターンを使用して指定します。

リポジトリ構成ファイルのパターン

ファイルには、正と負のファイル パス パターンが含まれています。 ファイル パス パターンには、 .ipynbなどのノートブックファイル拡張子が含まれます。

  • 正のパターンにより、一致するノートブックの出力を含めることができます。

  • 負のパターンは、一致するノートブックの出力インクルードを無効にします。

パターンは、すべてのノートブックに対して順番に評価されます。 無効なパスまたは .ipynb ノートブックに解決されないパスは無視されます。

ノートブックのパス folder/innerfolder/notebook.ipynbからの出力を含めるには 、次のパターンを使用します。

**/*
folder/**
folder/innerfolder/note*

ノートブックの出力を除外するには 、正のパターンが一致しないことを確認するか、構成ファイルの正しい場所に負のパターンを追加します。 負の(除外)パターンは !で始まります。

!folder/innerfolder/*.ipynb
!folder/**/*.ipynb
!**/notebook.ipynb

Gitフォルダをゴミ箱に移動(削除)

ワークスペースから Git フォルダーを削除するには:

  1. Git フォルダーを右クリックし、 [ゴミ箱に移動] を選択します。

  2. ダイアログ ボックスに、削除する Git フォルダーの名前を入力します。 次に、「確認してゴミ箱に移動」をクリックします。

    [ゴミ箱に移動]ダイアログボックスを確認します。