Docker

Docker Desktop を入れて動かす

10

Docker Desktop を入れて動かす — Docker Tips

Windows で Docker を試すなら、まず Docker Desktop です。インストーラーを入れ、docker --versiondocker compose version が通り、hello-world が動けば最低限の準備はできた状態です。

参考: Docker Desktop · Install Docker Desktop on Windows · Get started · docker container run


目次

  1. Docker Desktop とは
  2. 前提条件
  3. インストール手順(Windows)
  4. インストール後の確認コマンド
  5. hello-world で動作確認
  6. エンジンが起動しているかの確認
  7. アンインストールと再インストール
  8. うまくいかないとき

Docker Desktop とは

Docker Desktop は、コンテナを動かすための エンジン(dockerd)CLI(docker コマンド)Compose・GUI 管理画面をひとまとめにしたアプリケーションです。Windows では Hyper-V または WSL2 の上で Linux カーネルを動かし、その中で実際のコンテナが実行されます。

構成要素 役割
Docker Engine(dockerd) イメージのビルド・コンテナの実行を行う本体
Docker CLI(docker ターミナルから Engine を操作するコマンド
Docker Compose(docker compose 複数コンテナをまとめて起動・停止するツール
Dashboard(GUI) コンテナ・イメージ・ボリュームを画面上で確認

WSL2 バックエンドを使うと、Windows 上の Linux ディストリビューション(Ubuntu など)と同じカーネルをコンテナが共有するため、リソース効率と起動速度が Hyper-V バックエンドより良好です。現在のインストーラーは既定で WSL2 バックエンドを選びます。


前提条件

Windows 10/11 の 64bit で、次を満たしていれば十分です。

項目 要件の目安
OS Windows 10 64bit(22H2 / Build 19045)または Windows 11 64bit(23H2 / Build 22631 以降)
CPU 仮想化支援機能(Intel VT-x / AMD-V)が有効
メモリ 8GB 以上(公式のシステム要件)
WSL2 Windows 機能で有効化されていること

WSL2 が入っていない場合は、PowerShell を 管理者として実行 し、次のコマンドで有効化できます。再起動が必要です。

wsl --install

すでに WSL が入っている場合は、バージョンと既定ディストリビューションを確認しておきます。

wsl --statuswsl -l -v

BIOS/UEFI で仮想化支援機能が無効になっていると、Docker Desktop 起動時に「Hardware assisted virtualization ... is not enabled」といったエラーになります。タスクマネージャーの「パフォーマンス」タブで「仮想化: 有効」になっているかも簡単な確認手段です。


インストール手順(Windows)

1. インストーラーをダウンロード

公式サイトまたは公式ドキュメントのダウンロードリンクから Docker Desktop Installer.exe を取得します。

2. インストーラーを実行

ダブルクリックで起動し、ウィザードに従います。インストールモードは次の 2 種類です。

モード インストール先 権限
Per-user(個人用) %LOCALAPPDATA%\Programs\DockerDesktop 管理者権限不要
All users(全ユーザー) C:\Program Files\Docker\Docker 管理者権限が必要(UAC プロンプト)

学習目的の個人 PC であれば、どちらでも動作に大きな差はありません。「Use WSL 2 instead of Hyper-V」のチェックは既定でオンのままにしておきます。

3. コマンドラインからインストールする場合(任意)

GUI ウィザードを使わず、サイレントインストールしたい場合は次のように実行します。

Start-Process -Wait "Docker Desktop Installer.exe" -ArgumentList "install", "--accept-license"

4. 初回起動とサインイン

インストール完了後、Docker Desktop を起動するとライセンス確認や簡単なチュートリアルが表示されます。個人利用の範囲であれば、アカウント作成をスキップしても機能は使えます(一部の機能はサインインが前提になる場合があります)。

タスクトレイのクジラのアイコンが 静止した状態 になれば、Engine が起動完了しています。アイコンが動いている間はまだ起動中です。


インストール後の確認コマンド

PowerShell(または Windows Terminal)を開き、バージョンを確認します。

docker --versiondocker compose versiondocker info

期待する結果の例:

Docker version 27.x.x, build xxxxxxxDocker Compose version v2.x.x

docker info は Engine 側の詳細(OS、カーネル、コンテナ数など)を返します。エラーなく多くの行が表示されれば、CLI から Engine に接続できている証拠です。

bash(WSL / Git Bash)でも同じコマンドがそのまま使えます。

docker --versiondocker compose version

hello-world で動作確認

Docker の動作確認用に用意された最小のイメージ hello-world を実行します。

docker run hello-world

期待する結果:

Hello from Docker!This message shows that your installation appears to be working correctly....

このコマンドの内部では、次の 4 手順が走ります。

  1. ローカルに hello-world イメージが無いか確認
  2. 無ければ Docker Hub から docker pull 相当でダウンロード
  3. イメージからコンテナを作成
  4. コンテナ内のプログラムを実行し、メッセージを表示して終了

hello-world コンテナは仕事が終わると即座に停止します。この「実行して終了する」動きは正常 で、docker ps -a で確認すると Exited (0) という状態で残っているのが見えます。

docker ps -adocker rm $(docker ps -aq --filter ancestor=hello-world)

2 行目は動作確認用の hello-world コンテナをまとめて削除するコマンドです。学習用に何度も実行すると、停止済みコンテナが積み上がるので、気になったら削除しておくとよいです。


エンジンが起動しているかの確認

Docker CLI のコマンドがすべて失敗する場合、多くは Engine(dockerd)自体が起動していない ことが原因です。Windows では次の点を順に確認します。

確認項目 確認方法
Docker Desktop が起動しているか タスクトレイのクジラアイコンの有無
Engine の起動が完了しているか アイコンが静止している(アニメーション中は起動中)
WSL2 ディストリビューションの状態 wsl -l -vdocker-desktop が Running か
CLI からの疎通 docker version で Client / Server 双方が表示されるか
wsl -l -vdocker version

docker-desktop という名前の WSL ディストリビューションが Stopped の場合は、Docker Desktop アプリ自体を起動し直すと解消することが多いです。

補足: Get-Service com.docker.service は Hyper-V バックエンドや Windows コンテナ向けのサービス確認であり、既定の WSL2 バックエンドでは Engine 起動の決定的な指標にはなりません。まず docker versionwsl -l -v を優先します。


アンインストールと再インストール

設定を壊してしまった場合や、クリーンな状態からやり直したい場合はアンインストールしてから再インストールします。

Windows の「アプリと機能」から削除

「設定」→「アプリ」→「インストール済みのアプリ」で Docker Desktop を選び、アンインストールします。

コマンドラインから削除する場合

& "C:\Program Files\Docker\Docker\Docker Desktop Installer.exe" uninstall

per-user インストールの場合はパスが %LOCALAPPDATA%\Programs\DockerDesktop 配下になります。

アンインストール後もボリュームや WSL の設定が残っていることがあるため、完全にクリーンにしたい場合は WSL ディストリビューションも確認します。

wsl --list --verbosewsl --unregister docker-desktopwsl --unregister docker-desktop-data

これらのディストリビューションを削除すると、Docker Desktop 内に作成したイメージ・コンテナ・ボリュームはすべて消えます。学習用の再インストールであれば問題ありませんが、実データがある場合は事前に必要なものをバックアップしてください。


うまくいかないとき

症状 原因 対処
インストーラーが「WSL2 is not installed」で止まる WSL2 が未有効化 wsl --install を管理者権限で実行し再起動
起動時に「Docker Desktop - Unexpected WSL error」 WSL のディストリビューションが壊れている wsl --unregister docker-desktop 後に Docker Desktop を再起動
docker --version が「認識されていません」 PATH が通っていない、またはターミナルを開き直していない 新しいターミナルを開く。反映されなければ再ログイン
docker run hello-worldCannot connect to the Docker daemon Engine がまだ起動していない タスクトレイのアイコンが静止するまで待つ
仮想化に関するエラーで起動しない BIOS で VT-x / AMD-V が無効 BIOS/UEFI 設定で仮想化支援機能を有効化
社内 PC で「Hyper-V が無効化されています」 グループポリシーで機能制限 管理者に仮想化機能の許可を確認
ダウンロードが極端に遅い/失敗する ネットワークプロキシ プロキシ設定を Docker Desktop の Settings → Resources → Proxies に反映
docker compose version が古いまま 古い単体の docker-compose バイナリが PATH 優先 Docker Desktop 付属の docker compose(スペースあり)を使う

インストール直後に問題が起きた場合は、いったんタスクトレイからアプリを終了し、再起動してから docker info を実行すると状態がわかりやすくなります。

シェア