【完全無料】Docker DesktopとWSLを使わずにWindowsコンテナ環境を構築する方法

Windowsパソコンでのプログラミング環境 技術・プログラミング

会社のWindows PCでDockerを利用したいと考えたとき、多くの方が直面する悩みがあります。それは「Docker Desktopの有料化」と「WSL(Windows Subsystem for Linux)の制限」です。

一定規模以上の企業でDocker Desktopを利用するには有料ライセンスが必要になります。また、無償で使えるWSLを活用したDocker環境も強力ですが、これはあくまで「Linuxコンテナ」を動かすためのものです。従来の.NET Frameworkアプリケーションなど、Windowsベースのコンテナを動かしたい場合には要件を満たせません。

この記事では、無駄なコストをかけず、かつWSLに依存せずに「Windowsコンテナ」の実行環境を構築する手順を解説します。複雑なツールは使わず、Windowsの標準機能とDockerのバイナリファイルだけで完結するシンプルな方法です。

はじめに:なぜDocker DesktopとWSLを使わないのか?

環境構築を始める前に、なぜこの構成を選ぶのか、理由を明確にしておきましょう。

Docker Desktopの商用利用と有料化の壁

Docker Desktopは非常に便利なGUIツールですが、従業員数250名以上、または年間収益1,000万ドル以上の企業で利用する場合は、有料のサブスクリプション契約が必要です。会社で予算の承認を得るハードルが高く、導入を見送るケースも少なくありません。

WSL(Linuxコンテナ)では要件を満たせないケース

「Docker Desktopが有料なら、WSL上でDocker Engineを動かせばいい」という解決策はよく知られています。しかし、WSLはWindows上でLinuxカーネルを動かす仕組みです。

つまり、稼働するのは「Linuxコンテナ」のみとなります。Windows固有のライブラリやレガシーな.NET Frameworkに依存するシステムをコンテナ化したい場合、Linuxコンテナでは動作しません。どうしても「Windowsコンテナ」が必要な場面が存在するのです。

【Docker環境の比較表】

構成コスト(企業利用)コンテナの種類GUIの有無メリット・デメリット
Docker Desktop有料(条件あり)Linux / Windowsあり手軽だがコストがかかる
WSL + Docker無料Linuxのみなし (CLI)無料だがWindowsコンテナ不可
今回構築する環境無料Windowsのみなし (CLI)無料でWindowsコンテナが動く

Windowsコンテナ環境構築の全体像と事前準備

今回行う作業は、大きく分けて以下の3ステップです。

  1. Windowsのコンテナ機能を有効化する
  2. Docker Engine(バイナリ)のダウンロードと配置
  3. Dockerデーモンのサービス登録と起動

必要なシステム要件

作業を進める前に、お使いのPCが以下の要件を満たしているか確認してください。

  • OS: Windows 10 Pro / Enterprise または Windows 11 Pro / Enterprise(※Home版ではWindowsコンテナの機能が制限されるため、Pro以上のエディションが必要です)
  • 権限: 管理者権限(Administrator)を持っていること

ステップ1:Windowsのコンテナ機能を有効化する

まずは、Windowsのシステム上でコンテナを動かすための基盤(Windows Containers機能)を有効にします。

  1. スタートメニューを右クリックし、「Windows PowerShell(管理者)」または「ターミナル(管理者)」を開きます。
  2. 以下のコマンドをコピーして貼り付け、Enterキーを押して実行します。

処理が完了すると、PCの再起動を求められる場合があります。その場合は指示に従って再起動を行ってください。

ステップ2:Docker Engine(バイナリ)のダウンロードと配置

次に、Dockerを動かすためのコアとなるプログラム(バイナリファイル)を取得します。

公式サイトからの取得と配置

  1. Dockerの公式リリースアーカイブ(https://download.docker.com/win/static/stable/x86_64/)にブラウザでアクセスします。
  2. 最新バージョンの .zip ファイル(例:docker-29.3.0.zip など)をダウンロードします。
  3. ダウンロードしたZIPファイルを展開(解凍)します。
  4. 展開したフォルダ(dockerという名前のフォルダ)を、任意の場所に移動させます。例: C:\Program Files\docker に配置するのが一般的です。

環境変数(Path)の設定

コマンドプロンプトやPowerShellから、いつでもDockerのコマンドを呼び出せるように「Path(パス)」を通します。

  1. Windowsの検索バーで「環境変数」と入力し、「システム環境変数の編集」を開きます。
  2. 「環境変数」ボタンをクリックします。
  3. システム環境変数のリストから「Path」を選択し、「編集」をクリックします。
  4. 「新規」をクリックし、先ほどDockerフォルダを配置したパス(例:C:\Program Files\docker)を入力して「OK」で保存します。

ステップ3:Dockerデーモンのサービス登録と起動

最後に、DockerをWindowsのバックグラウンドサービスとして登録し、起動させます。

  1. 再び「Windows PowerShell(管理者)」を開きます。
  2. 以下のコマンドを実行して、DockerをWindowsサービスとして登録します。
  1. 続けて、登録したサービスを起動します。

これで環境構築は完了です。

動作確認:最初のWindowsコンテナを動かしてみよう

正しく設定できているか、軽量なWindowsコンテナである「Nano Server」を起動して確認してみましょう。

PowerShellで以下のコマンドを実行します。

PowerShell

初回はイメージのダウンロード(Pull)が行われるため少し時間がかかります。ダウンロードが完了し、コマンドプロンプトの表記がコンテナ内部のものに変われば、無事にWindowsコンテナが稼働しています。


構築時によくあるエラーと対処法

💡 コラム:サービスが起動しない場合

Start-Service docker を実行した際、エラーで起動に失敗することがあります。この場合、多くは「Windowsコンテナ機能が完全に有効化されていない」か「他仮想化機能との競合」が原因です。

対策:

  1. PowerShellで Get-WindowsOptionalFeature -Online -FeatureName containers を実行し、Stateが Enabled になっているか確認する。
  2. 無効になっている場合はステップ1からやり直す。
  3. ウイルス対策ソフトがDockerdの通信を遮断していないか確認する。

まとめ:無駄なコストをかけずにDockerを活用しよう

この記事では、Docker DesktopとWSLを使わずに、Windows環境に直接Docker Engineを導入し、Windowsコンテナを稼働させる手順を解説しました。

  • ポイントのおさらい
    • Docker Desktopのライセンス問題を回避できる。
    • WSLでは不可能な「Windowsコンテナ」の実行が可能になる。
    • Windows標準のコンテナ機能とバイナリファイルの配置だけでシンプルに構築できる。

無事にDocker環境が整ったら、次はこの環境を活かして開発プロセスを効率化していきましょう。コンテナ化の恩恵を最大限に受けるには、CI/CD(継続的インテグレーション/継続的デリバリー)による自動化との組み合わせが効果的です。自動テストやデプロイの基礎については、以下の記事で図解入りで詳しく解説しています。

👉 【図解】CI/CDとは?Git連携から始める自動テストとデプロイの基礎知識

また、Dockerの各種設定ファイル(Dockerfileやdocker-compose.yml)の記述をスムーズに行うためには、エディタの最適化も欠かせません。作業時間を大幅に削減できるVSCodeの活用術もあわせてチェックしてみてください。

👉 【エンジニア必見】VSCodeショートカットキー最強一覧!極意と設定マニュアル

環境構築という第一歩を踏み出した今、次のステップへと進んで、快適な開発体験を手に入れましょう!

コメント

タイトルとURLをコピーしました