作業の開始: コンテナー用の Windows の準備
適用対象: Windows Server 2025、Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows 10、11
前提 条件
Windows 10 および 11
Windows 10 または 11 でコンテナーを実行するには、次のものが必要です。
- Anniversary Update (バージョン 1607) 以降で Windows 10 または 11 Professional または Enterprise を実行している 1 台の物理コンピューター システム。
- Hyper-V を有効にする必要があります。
Windows Server コンテナーは、Windows 10 と 11 で既定で Hyper-V 分離を使用して、運用環境で使用されるのと同じカーネル バージョンと構成を開発者に提供します。 Hyper-V 分離の詳細については、「分離モードの」を参照してください。
Windows Server
開発環境では、Windows Server コンテナーを実行するには、Windows Server を実行する物理サーバーまたは仮想マシンが必要です。
テスト用に、Windows Server 2025 Evaluation または Windows Server Insider Previewのコピーをダウンロードできます。
コンテナー対応の Azure VM
多くのアプリケーションとオーケストレーション パラダイムでは、独自のカスタム VM を構築してデプロイする必要があります。 Windows コンテナー ランタイムのサポート の Mirantis への 移行により、コンテナー ランタイムには Marketplace VM オファリングが提供されなくなりました。 このガイドの残りの部分では、コンテナー ランタイムがインストールされ、準備が整った Azure 用の VM を構築する方法について詳しく説明します。
Azure は、クラウドとオンプレミスの両方で、Azure Kubernetes Service を通じて完全かつフル マネージドのエンド ツー エンド エクスペリエンスを提供し続けます。 AKS と AKS-HCI はフル マネージド サービスであり、カスタム デプロイに慣れているものよりも管理オーバーヘッドが少なくなります。 コンテナー ランタイムのサポートは、Azure サブスクリプションの AKS および AKS-HCI サービスに含まれています。
次のオプションを検討するときは、3 つの点に留意する必要があります。 最適化する側面を決めるのは組織の判断です。
- 実装はどのくらい複雑ですか?
- コストは何ですか?
- 運用環境のワークロードにはどのような影響がありますか?
これらの各方法は、コンテナー対応の Azure VM を可能な限りスムーズに構築するためのオプションとして提供されています。 次のサブセクションでは、各オプションの長所と短所について詳しく説明し、開始する方法を示します。
Azure Image Builder
Image Builder を使用する利点は、構成がビルド時に行われ、実行時のワークロードに影響を与えないということです。VM スケール セットがカスタム イメージから新しい VM をインスタンス化すると、イメージは既に準備されており、コンテナーを実行する準備ができています。
ただし、Azure イメージ ビルダーは実装が複雑になる可能性があり、スクリプト拡張機能よりも多くの手順が必要です。 さらに、Image Builder サービスは無料ですが、ビルド プロセスに関連付けられているコンピューティング、ストレージ、ネットワークの使用状況を管理する必要があります (詳細については、こちら参照してください)。
お客様が独自の Windows Server VM イメージの構築を開始できるように、プロセスを段階的に詳しく説明するガイドを作成しました。 このガイドの PowerShell スクリプトを使用して、選択したコンテナー ランタイムをインストールします。
ヒント
VM でローカルに使用する予定のコンテナー イメージをキャッシュしてください。 これにより、デプロイ後のコンテナーの開始時刻が短縮されます。 Windows Server セクション の スクリプトは、これを行うのに役立ちます。
カスタム スクリプト拡張機能
カスタム スクリプト拡張機能は実装が速く、コストは Azure または GitHub にスクリプトを格納するためのわずかな価格のみです。 ただし、スクリプトは VM がプロビジョニングされた後にのみ実行される可能性があるため、スケールアウト時に VM を適切に準備するために追加の時間を費やす必要があります。
このガイドで提供されているスクリプトを使用して、プロビジョニング時に任意のコンテナー ランタイムをインストールするように VM スケール セットを構成します。 チュートリアルに従って CLI を使用してアプリをインストールし、カスタム スクリプト拡張機能を設定する方法について説明します。
コンテナー ランタイムをインストールする
Windows 10 および 11
次の手順を使用して、Windows 10 または 11 Professional および Enterprise エディションに Docker をインストールします。
Docker Desktop ダウンロードしてインストールし、まだお持ちでない場合は Docker アカウントを作成します。 個人または小規模ビジネス ユーザー向けに無料の Docker アカウントを作成できますが、大企業の場合は月額料金がかかります。 詳細については、Docker のドキュメントを参照してください。
インストール時に、既定のコンテナーの種類を Windows コンテナーに設定します。 インストールの完了後に切り替えるには、Windows システム トレイの Docker 項目 (次に示すように) を使用するか、PowerShell プロンプトで次のコマンドを使用します。
& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon .
[Windows コンテナーに切り替える] コマンドが表示されている Docker システム トレイ メニューを
Windows Admin Center
Windows Admin Center を使用して、Windows Server マシンをコンテナー ホストとして適切に設定します。 開始するには、Windows Admin Center インスタンスに最新のコンテナー拡張機能がインストールされていることを確認します。 拡張機能をインストールして構成する方法の詳細については、Windows Admin Center ドキュメントを参照してください。 コンテナー拡張機能がインストールされたら、構成する Windows Server マシンをターゲットにして、[コンテナー] オプションを選択します。
Docker
[インストール] ボタンをクリックしてください。 Windows Admin Center では、バックグラウンドで Windows Server と Docker の構成が開始されます。 プロセスが完了したら、ページを更新し、コンテナー拡張機能の他の機能を確認します。
Windows Server
Windows コンテナーを実行するには、コンピューターでサポートされているコンテナー ランタイムを使用できる必要があります。 Windows で現在サポートされているランタイムは、containerd、Moby、Mirantis Container Runtime です。
このセクションでは、PowerShell スクリプトのセットなど、Windows の特定のコピーに各ランタイムをインストールするプロセスについて詳しく説明します。これにより、各ランタイムを簡単にインストールできます。
Docker Community Edition (CE) は、共通の API とコマンド ライン インターフェイス (CLI) を備えたコンテナー用の標準ランタイム環境を提供します。 これは、Moby Projectの一部としてオープンソース コミュニティによって管理されています。
Windows Server での Docker の使用を開始するには、コンテナー関連の OS 機能を有効にして Docker ランタイムをインストールするように環境を構成する powershell スクリプト を しました。
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
.\install-docker-ce.ps1
構成の詳細については、Windows での Docker エンジンのに関するページを参照してください。
次の手順
手記
このガイドを読み、Windows コンテナー製品チームから追加のガイダンスを受け取りたい場合は、github/Windows-Containers にアクセスして、製品チームの予定表でチャットする時間の取得に関する情報を確認できます。
環境が正しく構成されたので、コンテナーを実行する方法について説明します。
最初のコンテナー を実行する