Box (仮想マシン) ソースコード リポジトリ Linux Runtime / SDK VS Code Extension 共有 共有 占有 占有 VS Code Docker Container VS Code 占有 GitHub Codespaces ブラウザ or RDClient ブラウザ or RDClient ブラウザ or RDClient 占有 占有 占有 ブラウザ 主に①~③の課題に対応 Dev Container Microsoft Dev Box .devcontainer / Dockerfile ソフトウェア構成定義 Azure VM イメージ ソースコード リポジトリ 開発者間の共有 Azure Compute Gallery Web ブラウザ もしくは Visual Studio Code (GitHub Codespaces を使用する場合) 端末ローカルに 必要なソフトウェア Web ブラウザ もしくは リモート デスクトップ アプリ Visual Studio Code + Docker Desktop ローカル実行 不可 Linux のみ 開発対象アプリ Windows / Linux (WSL or Container) 本資料の範囲
but controlled 組織標準を遵守しながら、開発者が現在のプロジェクト向けに ワークステーションをカスタマイズ可能 Managed and secured さまざまな場所で実行されているワークステーションのガバナンスを 一元化して、セキュリティ、コンプライアンス、およびコスト効率を向上 Enable self-service development with Windows 365
Windows 365 アーキテクチャ | Microsoft Learn Windows 365 のネットワーク要件 | Microsoft Learn Dev Box (クラウド PC)は MS 管理 Dev Box を Azure VNET と接続するこ とで、ネットワーク制御、各種 Azure サー ビスやオンプレミスとの連携が可能 Dev Box (クラウドPC)も ネットワークも MS 管理 簡易 管理
- Windows 11 Enterprise または Windows 10 Enterprise - Microsoft Endpoint Manager (Microsoft Intune) - Microsoft Entra ID P1 (Azure Active Directory P1) もしくは上記を含むスイート製品 - Microsoft 365 F3 / E3 / E5 / A3 / A5 - Microsoft 365 Business Premium / Microsoft 365 Education Student Use Benefit サブスクリプション ※ Dev Box にインストールして利用する各種ソフトウェアのライセンスは別途必要(Visual Studio IDE, Office 製品、各種 3rd Party 製品など)
Windows は Microsoft Store から、Android は Google Play から、MacOS の場合は App Store から このアプリは Dev Box 専用ではなく、サインインすると Azure Virtual Desktop や Windows 365 にも接続可能 開発者ポータルから “Open in browser” をクリックして、そのままブラウザ上から利用してもよい 17 https://learn.microsoft.com/ja-jp/azure/dev-box/tutorial-connect-to-dev-box- with-remote-desktop-app?tabs=windows Workspace URL を入力 (開発者ポータルのヘルプメニューで確認) 開発者ポータルと同じアカウント でサインイン Dev Box 仮想マシンが表示される ( AVD / W365 も表示される)
端末から直 接 Dev Box の管理や接続が可能 Dev Home ではローカル PC 上で動作する WSL や Hyper-V と同じ「環境」として管理される 複数のユーザーアカウント / Entra ID テナントに所属する環境を使い分けることが出来る Dev Home から起動する場合は Windows App を使用して接続することになる 18 Windows アプリとは - Windows App | Microsoft Learn Windows 開発者向けの Dev Home | Microsoft Learn
Box が接続する VNET を作成する(既存環境に追加する場合は接続先を決める) ② 全体を管理する Dev Center、VNET 接続、Dev Box 定義を作成 ③ プロジェクトを作成し Dev Box プールを作成、開発者にアクセス権を付与する 27 VNET 接続を作成 Dev Box 定義を作成 VNET / Subnet Project Dev Box プール(定義+接続)を作成 開発者にアクセス権を付与 クイックスタート: Microsoft Dev Box を構成する Project Dev Box プール(定義+接続)を作成 開発者にアクセス権を付与 Project Dev Box プール(定義+接続)を作成 開発者にアクセス権を付与 ① ② ③ ※ ネットワーク接続や Dev Box 定義はプロジェクト間で共通のリソース
リソースを作成する Portal や CLI で構築する場合は細かい設定は Dev Center リソースに対して設定していくことになるため、こ の段階ではあまり設定項目が無い 後述の Deployment Environment と共通のリソースだが、Dev Box のためだけに利用してももちろんよい 29 Dev Center を配置するリージョンは、Dev Box を配 置するリージョン(= VNET のリージョン)と必ずしも一 致していなくてよい Dev Center
をつなぐための「ネット ワーク接続」を構成する Dev Box が配置されるリージョンは、ここで接続された VNET によって決定する ネットワーク接続を複数構成することで、複数のサブネットや複数のリージョンに対して Dev Box を配置できる 30 Azure AD Join ないしは Hybrid Azure AD Join を使用して Dev Box を IT 管理下に入れる Dev Box 用に用意しておいた VNET および Subnet を選択 「ネットワーク接続」リソースをデプロイ Dev Center のネットワークに追加 作成しておいた ネットワーク接 続を追加すると、有効性のチェッ クが行われる Connection 1:N ※ Microsoft ホステッドネットワークを使用する場合はこの作業は不要
Center Dev Box User Dev Box を作成して利用できるメンバーに必要な権限 開発者ポータルでプロジェクトが表示されるようになる Dev Center Project Admin 後述の Dev Box プールの管理を行うために必要な権限 プロジェクトは複数登録できるので実情に合わせて権限を委譲できる 開発者ごとの Dev Box 利用台数の上限を設定 開発者が任意のタイミングで様々な作業端末をセルフサービスでデプ ロイできるのが特徴だが、無尽蔵に作られて放置されがち 想定される必要台数+α 程度に設定しておくとよい(マシンイメージの 入れ替えに伴う Dev Box の再作成中に何もできなくなるため) 33 1:N プロジェクト
利用に必要なライセンスはこのテナント上のユーザーアカウントに対して割り当てる 開発者は開発者ポータルや Dev Box のサインイン時にこのユーザーアカウントを使用する 36 Entra ID Azure Subscription UserA UserB Microsoft 365 E5 など ライセンス割り当て DevCenter Dev Project Pool Microsoft Managed Dev Box User ロール 信頼 課金
定義に登録 ② 開発者が Dev Box 作成時に CaC 構成ファイルを使用してカスタマイズ ③ 開発者が Dev Box 利用開始後に Windows PC 上の操作としてカスタマイズ ④ 構築された Dev Box (= Intune 登録された Cloud PC) に対して IT 管理者がアプリや設定を配布 37 VM Compute Gellary イメージ DevBox 定義 Dev Box Pool Dev Center Dev Box ① ② ③ ④ Intune 管理者(プロジェクトリーダーなど) 開発者 IT 管理者 ②タスク登録 ②構成ファイル
能、リポジトリ中心の 仮想化された IDE お客様に代わってホスト (SaaS) Azure サブスクリプション内 カスタムでパワフルな 事前構成された 仮想デスクトップ 汎用 ワークロード 開発者 ワークロード Windows 365 Cloud PC Microsoft Dev Box Azure Virtual Desktop Azure VM Azure Dev Test Labs GitHub Codespaces