【Windows】初心者必見!Dockerの基本とインストール手順を解説

「DockerをWindowsにインストールする方法がわからない」とお悩みではありませんか?

Dockerのインストール手順や基本的な使い方が具体的にわからず、困っている方も多いでしょう。 私も初めてDockerを使ったときに同じ悩みを抱えていたので、その気持ちが痛いほどわかります。 この記事では、DockerをWindowsにインストールする方法から基本的な使い方、コンテナやイメージの管理方法までを詳しくご紹介します。

読んでいただければ、Dockerを効率的に使いこなすためのヒントが得られるでしょう。

目次

Dockerとは何か

Dockerは、ソフトウェアのコンテナ化を可能にするオープンソースのプラットフォームです。コンテナは、アプリケーションとその依存関係をパッケージ化して、一貫性のある実行環境を提供します。これにより、開発者は異なる環境間でアプリケーションを簡単に移動させることができます。

Dockerの仕組み

Dockerは、イメージコンテナを利用してアプリケーションを実行するプラットフォームです。イメージはアプリケーションのスナップショットで、コンテナはそのイメージを実行するインスタンスです。この仕組みはよくレシピと料理に例えられます。イメージは料理のレシピで、コンテナはそのレシピに従って作られた料理です。同じレシピから何度でも同じ料理を作れます。これにより、異なる環境間でもDockerイメージ(レシピ)があれば同じ環境を構築することができ一貫性のある動作が可能になります。

Dockerと仮想環境の違い

Dockerと仮想環境(仮想マシン)は、どちらもアプリケーションの実行環境を提供しますが、アーキテクチャとリソース利用の面で異なります。

Dockerはコンテナ技術を利用し、ホストOSのカーネルを共有するため軽量で起動が速く、リソースのオーバーヘッドが少ないです。コンテナ技術とは、アプリケーションとその依存関係をパッケージ化し、独立した環境で実行する技術です。これは、アプリケーションを一つの独立したコンテナに詰め込んで船に積み込むようなものです。各コンテナは他のコンテナと独立しており、どの船に積んでも中身が変わらず同じように動作します。これにより、アプリケーションがどのような環境でも一貫して動作します。

コンテナを使って一貫した環境を提供し、開発から本番までのデプロイが容易で、軽量なアプリケーションやマイクロサービスに適しています。しかし、同じカーネルを共有するため、アクセス制御などセキュリティ強化の追加設定が必要です。

一方、仮想環境はハイパーバイザーを使ってホストOS上に独自のOSを持つ複数の仮想マシンを作成します。これは1つのパソコンの中に複数台のパソコンが起動しているようなものです。そのため、起動時間が長くリソース消費が大きくなりがちです。しかし、仮想環境は完全に隔離された独自のOSを持つためセキュリティが高く、例えば、他の仮想マシンでのセキュリティ侵害があっても、それが他の仮想マシンやホストOSに波及する可能性が低くなります。そのため、異なるOSを同時に実行したい場合に適していますが、管理が複雑で人的コストが大きいです。

このように、Dockerはリソース効率が良く、迅速なデプロイが求められる場面に適しており、仮想環境は高いセキュリティや複数OSの実行が必要な場面に適しています。それぞれの強みを理解し、用途に応じて使い分けることが重要です。

Docker仮想環境(仮想マシン)
・ホストOSのカーネルを共有
・軽量で起動が速い
・リソースの効率性が高い
・開発から本番一貫した環境を提供
・セキュリティ強化には追加設定が必要
・独自のOSを持つ
・起動時間が長い
・リソースの消費が大きい
・異なるOSを同時に実行可能
・セキュリティが高い

Dockerは無料で利用できるのか?

Dockerの基本機能は無料で利用可能です。しかし、数250名を超える企業、または年間売上高1000万ドルを超える企業でDocker Desktopを商用利用するには、有料サブスクリプション(Pro、Team、または Business) が必要です。また、無料プランと有料プランでは機能に格差が設けられているため、上記の条件を満たさない人でも生産性を上げたい人は有料プランを選択すると良いでしょう。

詳細な料金プランについては、下記のリンクからご確認ください。

Docker Desktop for Windowsのインストール方法

Docker Desktop for WindowsはDockerをWindows上で使用できるようにするソフトウェアです。WindowsへのDockerのインストールは簡単な手順で実行できます。以下では、具体的な手順を解説します。

  1. Linux環境の構築
  2. Docker Desktopをダウンロード
  3. インストーラを実行する
  4. Docker Desktopを起動する
  5. 動作確認をする
STEP

Linux環境の構築

Docker DesktopはLinux上で動作するアプリです。そのため、Windowsで使用するにはWindows上にLinux環境を構築する必要があります。

WSL2の有効化

WSL(Windows Subsystem for Linux)とは、LinuxのプログラムをWindows 10/11およびWindows Server上で実行するための仕組みです。これを起動しておくことでWindows上でDockerが起動する環境が準備されます。

管理者権限でコマンドプロンプトを開き、wsl --installコマンドを実行します。

wsl --install

コマンドを実行すると、LinuxディストリビューションのUbuntuが自動でインストールされます。以下のようにOS再起動を要求するメッセージが表示されましたらWindowsを再起動します。

C:\Windows\system32>wsl --install
インストール中: 仮想マシン プラットフォーム
仮想マシン プラットフォーム はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム  はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム  はインストールされました。
インストール中: Ubuntu
Ubuntu はインストールされました。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。

C:\Windows\system32>

再起動後、自動でUbuntuインストールの続きが始まります。完了するとUbuntuで利用するユーザー名とパスワードの設定を求められるので、任意の値を入力します。
※WSL2を操作したい際に必要となるため、ユーザー名・パスワードは忘れないようにしましょう。

上記まで完了したら、念のため再度Windowsを再起動します。

STEP

Docker Desktopをダウンロード

まず、公式サイト(Docker公式サイト)からWindows版のインストーラーを選択してダウンロードします。

STEP

Docker Desktopをインストール

ダウンロードしたDocker Desktop Installer.exeファイルをダブルクリックで実行します。インストールが完了するとログアウトが要求されますので、再度ログインしましょう。

STEP

Dockerを起動

スタートメニュー内にある Docker Desktop をダブルクリックし、 Docker が起動することを確認します。

※初回起動時に、管理者権限が求められる場合があります。うまく起動しない場合は権限を許可しましょう。

次に利用規約が表示されます。内容を確認の上で同意する場合は「Accept」を押します。

規約に同意すると、以下のようなSetting画面が表示されます。
特に理由が無い限り「recommended settings」で良いでしょう。そのまま「Finish」を押します。

STEP

Dockerの動作確認

Docker Desktop for Windowsが起動している状態で、コマンドプロンプトを起動して、下記のコマンドを入力してみてください。これにより、インストールされたDockerのバージョン情報が表示されます。

docker version

Dockerが正常に動作している場合は、以下のような結果が出力されるはずです。

Dockerの基本的な使い方

Docker Desktop for Windowsを使用すると、Dockerイメージの取得、コンテナの作成、保持しているイメージの確認、Dockerコンテナの起動、動作しているコンテナの確認といった一連の作業が可能です。

これらの作業は、動作確認で行ったように、コマンドプロンプトに目的に応じたコマンドを入力して行います。

コンテナの作成と実行

コンテナの作成と実行は、Dockerを使う上で最も基本的な操作です。これにより、ソフトウェアを簡単にデプロイし、実行できます。以下では、Dockerイメージからコンテナを作成し、実行する具体的な手順を説明します。

Docker Hubからイメージをダウンロード

  • 例:docker pull python:3.11
  • 説明: docker pull python:3.11コマンドは、Docker Hubから「python:3.11」イメージをダウンロードします。

ダウンロードしたイメージからコンテナを作成

  • 例:docker run -d -p 80:80 python:3.11
  • 説明: docker run -d -p 80:80 python:3.11コマンドは、ダウンロードした「python:3.11」イメージから新しいコンテナを作成して実行します。-dはデタッチドモード(バックグラウンド)で、-p 80:80はホストのポート80をコンテナのポート80にマッピングします。

コンテナの管理

コンテナの管理は、Dockerを効果的に使用するために必要なスキルです。コンテナの停止、削除、IDの取得などの操作を学ぶことで、より効率的にDocker環境を維持できます。

コンテナIDの取得

  • 例:docker ps
  • 説明: docker psコマンドは、現在実行中のすべてのDockerコンテナの情報を表示するコマンドです。また、停止しているコンテナも含む全てのコンテナIDを取得するにはdocker ps -aコマンドを使用します。

コンテナの停止

  • 例:docker stop コンテナID
  • 説明: docker stopコマンドは、実行中のDockerコンテナを停止します。

コンテナの強制停止

  • 例:docker kill コンテナID
  • 説明: docker killコマンドは、実行中のDockerコンテナを強制的に停止します。

Dockerイメージの管理

Dockerイメージの管理は、アプリケーションのバージョン管理やデプロイ作業を効率的に行うために重要です。ここでは、イメージの一覧表示、削除、タグ付けなどの基本的な操作方法を紹介します。

イメージ一覧表示

  • 例:docker images
  • 説明: docker imagesコマンドは、ローカルシステムに保存されているすべてのDockerイメージを一覧表示します。

イメージ削除

  • 例:docker rmi イメージID
  • 説明: docker rmiコマンドは、不要なDockerイメージをローカルシステムから削除します。

まとめ

この記事では、Windows用のDocker Desktopのインストール方法から使い方について詳しく解説しました。Dockerを使うことで開発環境の構築を容易になり、効率的なデプロイが可能やプロジェクト間での環境の一貫性や保つことが可能です。また、コンテナ化によりリソースの効率的な利用が実現されます。

この記事の情報を活用し、ぜひ効率的な開発環境を構築してください。

よかったらシェアしてね!
  • URLをコピーしました!
目次