Microsoft Dev Box とは
Microsoft Dev Box を使うと、開発者は、"開発ボックス" と呼ばれるすぐにコーディング可能なクラウド ワークステーションにセルフサービスでアクセスできます。 プロジェクトに固有のツール、ソース コード、事前構築済みのバイナリを使用して開発ボックスを構成できるので、開発者は作業をすぐに開始できます。 独自のカスタマイズされたイメージを作成することも、Visual Studio が既にインストールされている Azure Marketplace からの事前構成済みイメージを使うこともできます。
開発者の場合は、日々のワークフローで複数の開発ボックスを使用できます。 開発ボックスには、リモート デスクトップ クライアント (Windows アプリなど)、または Web ブラウザー (任意の仮想デスクトップなど) からアクセスできます。
Dev Box サービスは、組織内の 3 つのロール (プラットフォーム エンジニア、開発チーム リーダー、開発者) を想定して設計されています。
プラットフォーム エンジニアと IT 管理者は、協力して、開発者向けのインフラストラクチャとツールを開発者チームに提供します。 プラットフォーム エンジニアは、開発ボックスからリソースへのアクセスのセキュリティを確保するために、セキュリティ設定、ネットワーク構成、組織ポリシーの設定と管理を行います。
開発者チーム リーダーは、プロジェクトに関する深い知識を持つ経験豊富な開発者です。 DevCenter プロジェクト管理ロールを割り当てることができます。そうすれば、開発者エクスペリエンスの作成と管理を支援できます。 プロジェクト管理者は、開発ボックスのプールを作成および管理します。
開発チームのメンバーには、DevCenter Dev Box ユーザー ロールが割り当てられます。 その後、彼らはプロジェクトに対して有効になっている開発ボックス プールから、必要に応じて 1 つまたは複数の開発ボックスをセルフサービスで利用できます。 開発ボックス ユーザーは、複数の開発ボックスを作成すれば、複数のプロジェクトまたはタスクで作業を行うことができます。
Microsoft Dev Box によって、開発チームはプロジェクト リソースを制御しやすくなり、開発チームと IT 部門との隔たりがなくなります。
Microsoft Dev Box のシナリオ
組織は、さまざまなシナリオで Microsoft Dev Box を使用できます。
プラットフォーム エンジニアリングのシナリオ
Dev Box は、ユーザーごとのワークロードに適した開発ボックスをプラットフォーム エンジニアリング チームが提供するために役立ちます。 プラットフォーム エンジニアは以下の作業を実行できます。
- 開発ボックス プールを作成し、適切な開発ボックス定義を追加し、それらの特定のプロジェクトで作業している開発ボックス ユーザーのみにアクセス権を割り当てます。
- 自動停止スケジュールを使用してコストを制御します。
- 開発ボックスが作成されるリージョンを決定するネットワーク構成を定義する。
- 組み込みの Dev Box ユーザー ロールを割り当てて開発チームにアクセスを許可し、セルフサービスで開発ボックスを利用できるようにします。
IT 管理者のシナリオ
Dev Box には、IT 管理者向けの次の利点があります。
開発ボックスをネットワーク上の他のデバイスと同様に管理します。
- 開発ボックスは Microsoft Intune に自動的に登録されます。 Microsoft Intune 管理センターを使用して、開発ボックスを管理します。
- Intune の優先的な品質更新プログラムを使用して組織全体にゼロデイ パッチを展開することで、すべての Windows デバイスを最新の状態に保つことができます。
- 開発ボックスが侵害された場合は、それを分離し、ユーザーが新しい開発ボックス上で復旧して実行するのを支援します。
Dev Box により、セキュリティで保護された環境で安全なアクセスが提供されます。 Microsoft Entra ID のアクセス制御では、プロジェクトまたはユーザーの種類ごとにアクセスを整理できます。
- 開発ボックスを Microsoft Entra ID または Active Directory ドメインにネイティブで参加させます。
- 準拠デバイス経由で接続することをユーザーに求める条件付きアクセス ポリシーを設定します。
- サインイン時に管理者に多要素認証を要求します。
- 機密性の高いソース コードと顧客データにアクセスする開発ボックスに対してリスクベースのサインイン ポリシーを構成します。
開発者チーム リーダーのシナリオ
DevCenter プロジェクト管理ロールが割り当てられると、開発者チーム リーダーはプロジェクトの管理を支援できます。 プロジェクト管理者は次のことができます。
- 開発ボックス プールを作成し、適切な開発ボックス定義を追加します。
- 自動停止スケジュールを使用してコストを制御します。
- デベロッパー センターにアタッチされているカタログからセットアップ タスクを呼び出す構成スクリプトを使います。 セットアップ タスクは、開発ボックスの作成時に実行されて、プロジェクトに固有のソフトウェアをインストールしてカスタマイズします。
開発者のシナリオ
グローバルに分散された開発チームを持つ組織は、開発者が最も近いリージョンに独自の開発ボックスを作成できるように Dev Box を構成できます。 開発者は、IT 管理者チームを待たずに、必要に応じて開発ボックスを作成できます。 ユーザーは、任意のデバイスと任意のオペレーティング システムから開発ボックスにアクセスできます。
Dev Box では、複数のプロジェクトで作業する開発者をサポートします。 開発者は個別のワークロード、プロジェクト、またはタスク用に個別の開発ボックスを作成して使用できます。 開発者は、事前に定義されたプールから複数の開発ボックスを必要に応じて作成し、終了したらそれらの開発ボックスを削除することができます。
組織は、チームのさまざまなロールに対して開発ボックスを定義することもできます。 標準の開発ボックスを管理者権限で構成すれば、常勤開発者にはより詳細な制御を可能にし、一方請負業者にはより制限されたアクセス許可を適用することができます。
開発ボックスでは、ほとんどの汎用ワークロードに関連する要件を満たすのに十分な vCPU とメモリを備えた Dsv5 シリーズの仮想マシンが使用されます。 ストレージの場合、開発ボックスでは、高パフォーマンスで待機時間の短いディスク サポートを提供する Azure Premium SSD が使用されます。
Azure Deployment Environments と共有されているコンポーネント
Microsoft Dev Box と Azure Deployment Environments は、特定のアーキテクチャ コンポーネントを共有する補完的なサービスです。 Deployment Environments では、アプリケーションを開発するための構成済みのクラウドベース環境が開発者に提供されます。 デベロッパー センターとプロジェクトは両方のサービスに共通しており、企業内のリソースを整理するのに役立ちます。
Dev Box を構成するとき、Deployment Environments のリソースとコンポーネントが表示されることがあります。 Deployment Environments 機能に関する情報メッセージが表示されることさえあります。 Deployment Environments 機能を構成していない場合、このメッセージを無視しても問題ありません。
たとえば、プロジェクトを作成すると、カタログに関する次の情報メッセージが表示される場合があります。
関連するコンテンツ
Microsoft Dev Box の使用開始
Microsoft Dev Box の詳細情報: