【初心者向け】Docker Desktop 4.28 を Windows11 と macOS Sonoma へインストールしよう

  • このエントリーをはてなブックマークに追加

この記事では、仮想環境として コンテナ技術 や Docker に興味がある初心者さんに向けて、筆者の手持ちの環境Windows11とmacにDokcer Desktopを導入した際の手順、使ってみての感想を紹介します。


本記事の対象者

  • コンテナやDockerについて基本的な情報を知りたい方。
  • Dockerコンテナを試したいが、自分の環境に導入する手順が分からない方。
  • macやWindowsで同じ仮想環境、開発環境を使いたい方。

本記事のポイント

コンテナとは、アプリケーション(以下アプリ)とその依存関係を一緒に「コンテナイメージ」としてパッケージ化し、そのコンテナイメージを独立した環境で動かすことが出来る技術です。
これにより、アプリは一貫した環境である「コンテナ」で実行することが可能となり、開発者は「この環境では動作するけど、あの環境では動作しない」という問題を解消することができます。

Docker Desktopを利用する事で、同じツールでWindows、mac上でコンテナ技術を使うことが出来るので、操作は共通となるので学習のハードルは低くなります。
また、Docker DesktopとVirtualBoxの違いなどの比較もしていますので、参考にしてみてください。

Windows11とmacOS Sonomaの環境に、Docker Desktopをインストールする手順についてステップバイステップで説明します。

Docker コンテナを使用すると、開発者はより速くより効率的にアプリケーションを開発、テスト、運用することができるので、是非この記事を活用してDocker Desktopを導入してみましょう!


「筆者の経験談」
私は現在、VPS(仮想専用サーバー)を1台契約して、Webアプリケーションの開発やテストを行っています。
本番環境はUbuntu22.04ですが、Ubuntuを実行できる開発環境を複数契約するのはコストがかかるため、手持ちのmacbookやWindows上でVirtualBoxやUTMを使ってUbuntuの開発環境を構築しています。
その一方で、色々な仮想化ソフトウェアを使った開発環境の構築は、それぞれのツールの使い勝手が異なる為、運用負荷が高いのが課題でした。
Dockerコンテナでサーバー環境を構築すると、macbookやWindows上で統一した仕様の環境を使うことができる非常に効率的です。さらに、VirtualBoxやWSLに構築したUbuntu上にもDockerは導入できるので、色々な環境でDockerを活用すると、サーバー側の開発環境を運用する効率が向上する可能性が広がります。

今回検証した Windows 環境

  • オペレーティングシステム:
    エディション Windows 11 Pro バージョン 23H2
  • ハードウェア:
    プロセッサ AMD Ryzen 5 5600 6-Core Processor 3.50 GHz
    実装 RAM 16.0 GB

今回検証した Mac 環境

  • オペレーティングシステム:
    エディション macOS Sonoma
  • ハードウェア:
    プロセッサ Apple Silicon M3 、RAM 24GB

本記事で紹介するソフトウェアおよびツールは、筆者の個人的な使用経験に基づくものであり、公式のサポート外の設定や使用方法を含む場合があります。利用に際しては、公式サイトの指示およびガイドラインを参照し、自己責任で行ってください。


目次


Docker Desktopとは何か

Docker社は、Docker Desktopというソフトウェアを提供しており、このソフトウェアをインストールすることで利用できます。また、Docker Desktopは、Windows、macOS、Linuxで利用できます。

Docker Desktopには、Dockerエンジン、Docker CLIクライアント、Docker Composeが統合されており、これらはそれぞれDockerコンテナを管理する為の機能を提供します。

これらの機能を使うことで、開発者は自分のマシン上でDockerコンテナを直接作成したり、テストしたり、実行したりすることが可能になります。

Docker Desktopは基本的には無償で利用できますが、有償化の条件に合致する場合は、サブスクリプション契約を結ぶ必要があります。サブスクリプションに関する詳細は[Docker公式サイト]をご覧ください。


Docker Desktopの動作概要

Docker Desktopの動作は、主に以下の3つのプロセスに分けられます。これらのプロセスを通じて、アプリの開発から運用までのライフサイクルを効率的に管理することが出来ます。

  1. イメージの作成
    • Dockerfileという設定ファイルに基づいてコンテナイメージを作成します。このイメージは、アプリケーションとその依存関係、実行に必要な環境設定などを一緒にパッケージ化したものです。
  2. コンテナの起動
    • コンテナイメージを基にコンテナを起動します。このコンテナは、アプリケーションの実行環境となります。
  3. コンテナの管理
    • 起動したコンテナの状態を管理します。コンテナの起動、停止、削除などの操作を行うことができます。

Docker Desktopのメリット・デメリット

メリット

  • 環境の一貫性:
    • 開発者はローカル環境で動作するアプリケーションをそのまま本番環境でも動作させることができます。
    • 例えば、開発者A(リーダー)が作成したコンテナを、開発者B(メンバー)の環境でも同じように動作させることが可能です。
    • これにより、「ローカルでは動作するのに本番環境では動作しない」という実行環境の差異に関する問題を解消できます。
  • 軽量な仮想化:
    • コンテナは仮想マシンに比べて軽量であり、起動や停止が非常に高速です。
    • 例えば、Nginxのコンテナは数秒で起動し、すぐにWebサーバーを提供できます。
  • 開発効率の向上:
    • 環境設定の時間を節約できるため、開発者はアプリケーション開発に集中できます。
    • 例えば、NginxとDjangoとPostgreSQLを組み合わせた開発環境を1コマンドで再現できます。
  • コンテナイメージの共有
    • 公式のコンテナイメージが用意されている場合(NginxやWordPressなど)は、そのイメージを利用するだけで、簡単に環境を構築することが出来ます。

デメリット

  • 学習コスト:
    • Dockerの操作やコンテナ化のための設計には学習コストがあります。
    • 特に、ネットワークやストレージの設定に慣れるまで時間がかかるかもしれません。
  • セキュリティ:
    • コンテナはホストOSとカーネルを共有するため、セキュリティリスクが存在します。
    • 例えば、コンテナ内からホストOSへの攻撃を防ぐためのセキュリティ対策が必要です。
    • 複数のコンテナが特定のOS上で動作するので、大元のOSに不具合が生じた場合はすべてのコンテナに影響が出ます。コンテナ化を行う際にはセキュリティの確保が重要になります。

Docker Desktop と VirtualBoxとの違い

両者の違いを理解するためには、それぞれがソフトウェアの実行環境をどのように提供するかを理解することがポイントです。

主な違いは、Docker Desktopが軽量で効率的な環境の分離を提供するのに対して、VirtualBoxは仮想マシン単位で完全に独立したオペレーティングシステム(OS)を実行可能にすることです。


Docker Desktop

「コンテナ」型のプラットフォームを提供します。

ホストOS上では、Docker Engineというコンテナエンジンが動作します。このDocker Engine上で、コンテナ環境が各コンテナイメージごとに起動され、アプリケーションが実行されます。

コンテナ上のアプリやライブラリはホストOSのカーネルと呼ばれるOSの基本部分のみを利用するため、コンテナ単体ではリソースを節約し、軽量に動作することが可能です。


VirtualBox

仮想マシン(以下VM)を提供します。

VMはハードウェアを模倣したソフトウェアで、ホストOS上で完全に分離されたゲストOSを実行することができます。

これにより、異なるOSを同一のハードウェア上で並行して実行することが可能になります。しかし、VMは完全なOSを実行するため、リソースの消費が大きくなります。

「筆者の一言」
DockerとVirtualBoxは、上記の説明の通りDockerの方が使うリソースが少なく、オーバーヘッドも少ないため、軽快にサーバー環境を動作させることが出来ます。
その一方で、GUIを使ったアプリケーションを使ったり作ったりする場合は、VirtualBoxの方が良いと感じました。
Dockerでもできるのですが、追加の設定などが必要であったり、LinuxのGUIの仕組みに関する知識が必要だったりします。つまり、上級者向けということです。
なので、GUIはVirtualBoxサーバー環境はDockerといった使い分けが、適材適所かなと考えています。

Windows11:Docker Desktopのインストール

Windows11:Docker Desktopのソフトウェア要件

Docker Desktopは、自分で利用しているWindows環境によってソフトウェア要件が異なります

Windows 11 Homeバージョンを利用している方は、WSL2をバックエンドとして利用するケースのみを参照してください。

Windows 10もしくはWindows 11 Proバージョンを利用している方は、WSL2および Hyper-Vの両方をバックエンドとして利用出来ますので、双方の場合を参照して自分の環境に合ったケースを選択してください。

「筆者の経験談」
Docker Desktopのソフトウェア要件を調べていましたが、色々とパターンがあることが分かりました。
Windows11 HomeとPro環境両方で利用出来る準備のしやすさ、現在のMicrosoftやUbuntuの力の入れ具合から、WSL2を選択する方がお薦めです。
筆者の周りでWindows11でDockerを使っている人は、ほとんどがWSL2を使っているので、周囲に聴ける人が多いのも選択の理由となります。皆さんも周囲の方が何を使っているのか調べてから選択するのも有効な手段となりますので、コミュニケーションを取ってみてはいかがでしょうか。

WSL2 をバックエンドとして利用するケース

  • WSLバージョン1.1.3.0以上
  • Windows 11 64ビット:HomeまたはProバージョン21H2以上
  • Windows 10 64ビット:
    • 推奨はHomeまたはPro 22H2(ビルド19045)以上
    • 最小要件はHomeまたはPro 21H2(ビルド19044)以上
  • WindowsでWSL 2機能を有効にします。
  • Windows 10またはWindows 11上でWSL 2を正常に実行するには、以下のハードウェア前提条件が必要です。:
    • ハードウェア仮想化機能を備えた64ビットプロセッサ(Hyper-V要件と同様)
    • 4GBのシステムRAM
    • BIOSでハードウェア仮想化を有効にします。

Hyper-V をバックエンドとして利用するケース

  • WSLバージョン1.1.3.0以上
  • Windows 11 64ビット:Proバージョン21H2以上
  • Windows 10 64ビット:
    • 推奨はHomeまたはPro 22H2(ビルド19045)以上
    • 最小要件はHomeまたはPro 21H2(ビルド19044)以上
  • WindowsでHyper-V機能を有効にします。
  • Windows 10またはWindows 11上でHyper-Vを正常に実行するには、以下のハードウェア前提条件が必要です。:
    • ハードウェア仮想化機能を備えた64ビットプロセッサ(Hyper-V要件と同様)
    • 4GBのシステムRAM
    • BIOSでハードウェア仮想化を有効にします。

Windows11:Docker Desktopのインストール手順

Windows11にDocker Desktopをインストールするための詳細な手順は次のとおりです。

まず最初に、Dockerの公式ウェブサイトにアクセスすることで始まります。このウェブサイトは、Docker Desktopのインストーラーを提供している場所です。

ウェブサイトのホームページに移動したら、次にDocker Desktopのインストーラーを探しましょう。このインストーラーは通常、明確に表示されていますので、それを探し出すのは難しくありません。

インストーラーを見つけたら、次にそのインストーラーをダウンロードします。ダウンロードはあなたのインターネット接続速度によりますが、通常、数分以内に完了するはずです。

インストーラーのダウンロードが終わったら、ダウンロードしたインストーラーを実行します。

画面上の指示に従って進めることで、Docker Desktopのインストールが進行します。

まずはインストール構成を選択します。今回は、Hyper-Vの代わりにWSL2を使いますので、以下の様にチェックしてください。

構成を選択したら、【OK】ボタンをクリックします。

クリックすると、インストールが始まります。インストールされているファイルがダイアログに表示されます。

インストールが完了したら、再起動が求められるので、【Close and restart】ボタンをクリックして再起動します。


マシンの再起動がが完了したら、次にDocker Desktopを起動します。これは通常、メニュー上のアイコンをクリックすることで行います。

Docker Desktopが起動したら、Dockerサブスクリプション規約の承諾が求められます。個人の場合は無償ですが、有償化の条件に該当することもありますので、条件は確認してください。

次にDocker IDでサインインが求められます。

Docker IDは、Dockerの各種サービスを利用するためのアカウントであり、まだDocker IDを持っていない場合、このステップで新たに作成することも可能です。今回はスキップします。

次に、利用者の特性調査がでます。ここでは、スキップします。

以下の画面が表示されていればDocker Desktopは無事にインストールされています。これで、Windows11にDocker Desktopのインストールが完了しました。


Windows11:Dockerの動作確認

次に、Windows PowerShellを起動し、Dockerが無事に動作するのか確認します。

docker -v を実行し、Dockerが起動出来ていれば、dockerのバージョン情報が表示されます。

次に、docker runコマンドでイメージを取得、コンテナの実行をしてみましょう。

今回は公式のhello-worldコンテナを実行します。赤枠のメッセージが表示されていれば、hello-worldコンテナを実行することができています。

これらの手順をしっかりと踏むことで、あなたはWindows11でDocker Desktopを無事に使用開始することができるでしょう。


macOS Sonoma:Docker Desktopのインストール

macOS Sonoma:Docker Desktopのソフトウェア要件

Docker Desktopは、自分で利用しているmac環境によってソフトウェア要件が異なります

Apple Silicon 搭載 mac & Intel Chip 搭載 mac

  • サポートされるmacOS
    • Dockerは現行リリースとその前の2つのリリースのmacOSに対してDocker Desktopのサポートを提供しています。新しいメジャーバージョンのmacOSが一般に利用可能になると、Dockerは最も古いバージョンのサポートが終了するので注意してください。
  • RAM
    • 4 GB 以上
  • 追加ソフトウェア(Apple Silicon 搭載 macのみ
    • Docker Desktop 4.3.0から、Rosetta 2をインストールする必要性は無くなっていますが、まだRosetta 2が必要な一部のコマンドラインツールがあるのでRosetta 2をインストールすることをお勧めします。
    • この問題の詳細についてはリンクをご覧ください。
    • Rosetta 2を手動でコマンドラインからインストールするには、次のコマンドを実行します:
softwareupdate --install-rosetta

macOS Sonoma:Docker Desktopのインストール手順

インストール

macOS に Docker Desktop をインストールするための詳細な手順は次のとおりです。

まず最初に、Dockerの公式ウェブサイトにアクセスします。このウェブサイトは、Docker Desktopのインストーラー等を提供している場所です。

ウェブサイトのホームページに移動したら、次にDocker Desktopのインストーラーを探しましょう。このインストーラーは通常、明確に表示されていますので、それを探し出すのは難しくありません。

インストーラーを見つけたら、次にそのインストーラーをダウンロードします。ダウンロードはあなたのインターネット接続速度によりますが、通常、数分以内に完了します。

インストーラーのダウンロードが完了すると、「Docker.dmg」というファイルが保存されます。

このファイルを開きインストーラーを実行します。

Dockerのインストーラが開き、Docker.appをApplicationsにドラッグ&ドロップします。

これにより、Docker Desktopがあなたのコンピュータにインストールされます。
インストールが完了したら、次にDocker Desktopを起動します。
アプリケーションフォルダからDocker Desktopを選択し、クリックして起動します。

Docker.appを実行するかの警告が表示されます。ここでは【開く】をクリックします。


初回起動

Docker Desktopが起動したら、Dockerサブスクリプション規約の承諾が求められます。個人の場合は無償ですが、有償化の条件に該当することもありますので、条件は確認してください。

Docker Desktop画面が自動で起動します。

今回は推奨設定を選択し、【Finish】ボタンをクリックします。

次にDocker IDでサインインが求められます。

Docker IDは、Dockerの各種サービスを利用するためのアカウントです。
まだDocker IDを持っていない場合、このステップで新たに作成することも可能です。
今回はスキップします。

次に、利用者の特性調査がでます。ここでは、スキップします。

以下の画面が表示されていればDocker Desktopは無事にインストールされています。これで、macOS Sonoma にDocker Desktopのインストールが完了しました。


2回目以降の起動

トップステータスバーにクジラのアイコンが表示されているので、それを右クリックしメニューを開いて【Go to the Dashboard】を選択して起動します。


macOS Sonoma:Dockerの動作確認

インストールが完了したら、次のステップはDockerが正しくインストールされ、適切に動作していることを確認することです。

これを行うには、コンピュータのターミナルを開きます。ターミナルが開いたら、以下のコマンドを実行します。

docker --version

これにより、Dockerのバージョンが表示され、インストールが正常に完了したことが確認できます。

さらに、Dockerが正常に動作していることを確認するためにもう一つのコマンドを実行します。

docker run hello-world

このコマンドを実行すると、Dockerが正常に動作していることが確認できます。


まとめ

今回の記事のまとめです。Docker Desktop を使っていれば、色々な種類の仮想化ソフトウェアを導入せずにアプリの移植性や環境構築の手間を大幅に削減できる開発者にとって欠かせないツールであることを解説しました。さらに、Windows11とmacOSにDocker Desktopをインストールする方法について説明しました。

今回の記事のポイントは以下となります。

  • Docker DesktopはWindows 11 や mac に簡単に導入できるので初期導入のハードルが低い。インストーラ入手してしてウィザードに従って設定するだけの簡単な手順でインストールできる。
  • Docker DesktopではDockerイメージを入手することで色々な環境を構築することが可能になる。
  • Docker Desktopの操作を覚えることにより、異なる環境でコンテナイメージを使って統一されたアプリの開発作業、環境構築を行う事が可能となる。
  • Dockerコンテナは、使用するリソースの量が少ないため既存のハードウェアリソースを有効活用が可能。

初心者の方でも、この記事を通じてDockerコンテナの基本的な理解を得ることができたことを願っています。これをきっかけに、ぜひDocker コンテナの世界に一歩踏み出してみてください!

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*


reCAPTCHAの認証期間が終了しました。ページを再読み込みしてください。