メインコンテンツへスキップ

WindowsにDockerをインストールする2つの方法を比較

開発環境 Windows Docker WSL Ubuntu
目次

トピック
#

Windows における Docker のインストール方法を比較

  1. Windows に Docker Desktop for Windows をインストール
  2. WSL Ubuntu に Docker CE をインストール

比較表
#

項目 Docker Desktop for Windows Docker CE on WSL Ubuntu
公式推奨
インストールのしやすさ
機能
GUI
コンテナの種類
Windows/Linux
Linux
パフォーマンス
ライセンス
条件付き無料
無料

Docker Desktop for Windows の概念図

  1. Docker Engine :
    コンテナを作成、実行するための核心的な実行環境
  2. Docker Compose :
    複数のコンテナを定義し、実行するためのツール
  3. Docker CLI :
    Docker を操作するためのコマンドラインインターフェース
  4. Kubernetes :
    コンテナを自動でデプロイ、管理、スケーリングするためのオープンソースシステム
  5. docker-desktop :
    WSL 上で Docker Desktop を動作させるための特別なLinuxディストロ
  6. docker-desktop-data :
    Docker Desktop の実行に関連するデータ( Docker イメージや Docker コンテナなど)を
    格納するための特別な Linux ディストロ

Docker CE on WSL Ubuntu の概念図

公式推奨
#

Windows、MacOS、Linux どの環境においても Docker Desktop の利用を推奨している

インストールのしやすさ
#

Docker Desktop は、簡単に Docker が使えるように、本来は複雑なセットアップを自動で行う

Docker CE の場合は、コマンドラインでインストール作業を行う

機能
#

Docker Desktop がインストールする機能

Docker CE でインストールする機能

Docker Desktop に含まれるが Docker CE に含まれない機能

GUI
#

  • Docker Desktop では、コンテナやイメージの管理がGUIで操作できる
  • Docker CE はコマンドラインのみ

コンテナの種類
#

  • Docker Desktop for Windows では、Windows コンテナと Linux コンテナの2種類が使用可能
  • WSL Ubuntu の Docker CE では、Linuxコンテナのみ

結論 :

  • Windows Home → Linux コンテナのみ
  • Windows Pro, Enterprise → Windows, Linux コンテナ

パフォーマンス
#

定量的に計測したわけではない経験則だけれど Docker Desktop は動作が重いと感じる

詳しく調べていないが、予想できる原因一覧 :

  1. リソース管理 :
    Docker Desktopは、Docker Engine、Kubernetesなどの複数のサービスを同時に管理する。
    これらのサービスがシステムリソースを消費し、特にメモリとCPU使用率が高くなる。
  2. 仮想化オーバーヘッド :
    Docker Desktop for Windowsは WSL 上で docker-desktopとdocker-desktop-data の2つを管理・実行するため、その仮想化オーバーヘッドを伴う。
  3. ファイルシステムの変換 :
    WSL 2では、WindowsとLinux間でファイルシステムを変換する必要がある。
    特に、bind mountの設定や大量のファイル操作といったI/Oが多い作業では顕著になる。
  4. Docker Desktop自体の重さ :
    Docker Desktop 自体に含まれる統合 GUI や Kubernetes 管理機能などのオーバーヘッド。

bind mount の概念図

情報源 :

ライセンス
#

Docker CE : 無料

Docker Desktop : 条件付き無料

Pricing | Docker Commercial use of Docker Desktop at a company of more than 250 employees OR more than $10 million in annual revenue requires a paid subscription (Pro, Team, or Business).

従業員数250名以上、または年間売上1,000万ドル以上の企業でDocker Desktopを商用利用するには、有料サブスクリプション(Pro、Team、またはBusiness)が必要です。

判断基準
#

  • 基本 → Docker Desktop

  • Windows コンテナを使いたい → Docker DesktopWindows Pro

  • GUI いらない → Docker CE

  • 動作が重い → Docker CE

  • ライセンスに引っかかる → Docker CE

Docker 導入手順
#

前提 : Windows11 WSL Ubuntu VSCode Git GitHub 環境構築

  1. Windows11 に Docker Desktop for Windows をインストール
  2. WSL Ubuntu に Docker CE をインストール