Dockerとは
Dockerとは、OSレベル仮想化プラットフォームソリューションです。Dockerイメージを用いたコンテナ仮想化システムを構築し、仮想化実行環境を実現します。環境をイメージとして登録できますので、同一環境の複製が容易で配布がしやすく利用者が増加しています。
また、Dockerはホストカーネルを利用しており、単一OS上で複数のコンテナが実行できるため、OSで用いるシステム資源は少なくすみ、メモリーの効率が向上するメリットがあります。一言で言うと、「軽量で速い」ことが特長です。
【参考】:Docker
Dockerのセットアップ概要
Dockerでは、Windows版・Mac版・Linux版のダウンロードモジュールが用意されています。Mac版・Windows版ではDocker Desktopを利用し、Linux版ではDocker Engineをインストールしておきます。
Windows版Dockerのインストール概要
DockerではDocker CLIによりコマンドラインインターフェイスを通じて操作するほか、Docker DesktopによりGUI操作が可能です。WindowsでDockerを利用する場合は、Docker Desktopを用いてGUI操作が可能です。モジュールダウンロードとインストールが完了したら、Docker Desktopのセットアップを行います。
【参考】:Docker Desktop overview 【参考】:Install Docker Desktop on Windows
Windowsをクライアント用途ではなく、サーバ用途で用いる場合はDockerデーモンを起動します。
【参考】:Install server and client binaries on Windows
Windows版Docker Desktopの動作要件
Windows版Docker Desktopは以下の要件が設定されています。 ・サポートOSバージョン - Windows 11 64 ビット:Home・Pro・Enterprise・Educationの21H2以降 - Windows 10 64 ビット:Home・Proの21H2以降、 Enterprise・Educationの20H2以降
・WSL 2(Windows Subsystem for Linux 2)バックエンド - WindowsでWSL 2機能の有効化 - Linuxカーネルアップデートパッケージのダウンロード・インストール
・Hyper-Vバックエンドと Windowsコンテナ - Hyper-Vとコンテナ機能の有効化 - クライアントHyper-V実行時の仮想化要件を満たすこと 【参考】:Install Docker Desktop on Windows System requirements
以前はWindows 10 Homeのインストールは大変でしたが、上記条件を満足する場合は問題なくインストールできます。
Docker Windows版のインストール
Docker Desktopは、Docker Hubのサイトからダウンロードできます。ダウンロードのリンク先はドキュメントのインストール方法にも記載されており、同じモジュールがダウンロードできます。
【参考】:Install Docker Desktop on Windows
2022年10月19日現在、Docker Desktopの最新リリースは4.13.0です。Dockerをバージョン指定してダウンロードする場合は、リリースノート記載のリンクから旧バージョンをダウンロードすることもできます。
【参考】:Docker for Windows release notes
実際のDockerインストール方法
ここからは、最新版のDocker Desktop 4.13.0を実際にダウンロード・インストールする方法を解説します。
まず、事前の準備として、インストールに使うダウンロードモジュールを保存しておきます。ダウンロードモジュールは以下のDocker公式サイトからダウンロードできます。ここでは、Windowsでのインストール方法について図解していきます。
【参考】:Install Docker Desktop on Windows
ダウンロードモジュールの起動
まず初めに、ローカルドライブにダウンロードしておいた、インストーラの「Docker Desktop Installer.exe」を起動します。「ユーザーアカウント制御」の警告メッセージが表示された場合には、「このアプリがデバイスに変更を加えることを許可しますか?」で「はい」をクリックします。
コンフィグレーション画面の確認
続いて、コンフィグレーション画面(Configuration)が表示されます。ここで「Use WSL-2 insted of Hyper-V(recommended)」と「Add shortcut to desktop」のオプション設定を確認します。WSL 2をバックエンドとして利用する場合は、両方にチェックを入れたまま「OK」で構いません。
インストールを実行
コンフィグレーション画面で「OK」を押すと、すぐにインストールが開始されます。数分するとインストールが完了し、「Installation succeeded」の画面が表示されます(①)。画面を確認したら、「Close and log out」(②)をクリックして完了ですが、1つ注意が必要です。
■注意点 通常「Close」の表示はインストーラが終了するだけですが、ここでの「Close and log out」の場合は、Dockerの設定を反映するためにWindowsからサインアウトが行われます。あらかじめ他のアプリ等をクローズしておいてから、「Close and log out」をクリックすることをおすすめします。
Docker Desktopのライセンスの確認
「Close and log out」を押した後、再度Windowsにサインインすると、設定にしたがってDocker Desktopが自動的に起動します。最初の起動時には新しいライセンス条項が表示されますので、「Accept」をクリックすることで利用が可能です。
インストールできない場合は管理者権限が必要ですので、インストールユーザを確認してください。
Docker Desktopの起動画面
Docker Desktopの起動時には、起動中を意味する「Docker Desktop starting…」が表示され、準備が完了したらメイン画面が表示されます。初回はTutorialが表示されますので、使い方を学ぶことができます。Tutorialはスキップすることもできます。
その後、メインの「Containers」画面が表示されます。次回以降の起動時には、この「Containers」画面が表示されます。作成したイメージは「Images」、ボリュームは「Volumes」で確認できます。
Dockerのステータス
Docker Desktopは、バックグラウンドでDocker Engineを起動します。Docker Engineの起動状況は、Docker Desktop左下のクジラのアイコン色で分かります。オレンジが起動していない状態で、緑が正常起動している状態です。
次の図に表示の違いを掲載しますので、参考にしてください。
設定の確認と補足情報
設定変更が必要であれば、メイン画面右上の歯車のアイコンをクリックしてください。設定画面が表示されますので、必要な設定変更を行うことができます。
起動できない場合は、「Enable Hyper-V Windows Features」と「 Install required Windows components for WSL 2」要件がクリアできていない場合、起動時にエラーとなります。
併せてメモリーの割り当て不足の場合もエラーとなります。その場合は、Dockerアイコンをクリックし、「Resource」「Advanced」からメモリ割り当て量を1GB以上に設定します。
今回のように、WSL 2をバックエンドとして利用する場合は、システムリソースはWindowsで管理されています。必要があれば”.wslconfig”ファイルを作成し、メモリ量などのシステムリソースを変更することもできます。
【参考】:WSL での詳細設定の構成
Mac版Dockerのインストール概要
MacOSでDockerを利用する場合も、Docker Desktopを用いGUI操作が可能です。モジュールダウンロードとインストールが完了したら、Docker Desktopのセットアップを行います。
【参考】:Docker Desktop overview 【参考】:Install Docker Desktop on Mac
Mac版Docker Desktopの動作要件
Mac版Docker Desktopは以下の要件が設定されています。 ・Intelチップ版 macOS 10.15以上 4GB以上のメモリ搭載 VirtualBox 4.3.30以降
・Appleチップ版 Rosetta 2のインストールが必要
【参考】:Install Docker Desktop on Mac System requirements
Docker Mac版のインストール
Docker DesktopはDocker Hubのサイトからダウンロードできます。ドキュメントのリンクからも同じモジュールがダウンロードできます。
【参考】:Install Docker Desktop on Mac
2022年10月19日現在、Docker Desktopの最新リリースは4.13.0です。Dockerをバージョン指定してダウンロードする場合は、リリースノート記載のリンクから旧バージョンをダウンロードすることもできます。
【参考】:[Docker Desktop release notes]https://docs.docker.com/desktop/release-notes/)
実際のインストール方法は以下の通りです。 ・ダウンロードモジュールの起動 Docker.dmgをダブルクリックしインストーラを起動します。
・アプリケーションフォルダに登録 Dockerアイコン(Docker.app)をアプリケーションフォルダーにドラッグアンドドロップします。
Windows同様、最初の起動時には新しいライセンス条項が表示されますので、「Accept」をクリックすることで利用可能になります。もしインストールできない場合は管理者権限が必要ですので、インストールユーザを確認してください。
起動時にエラーとなる場合はメモリーの割り当て不足の可能性があります。Dockerアイコンをクリックし、「Resource」「ADVANCED」からメモリ割り当て量を1GB以上に設定します。イメージの保管場所も同じ画面で確認・変更できます。
Linux版Dockerのインストール概要
長らく登場が待たれていたLinux版Docker Desktopですが、2022年5月10日に正式リリースされました。従来のDocker Engineに加えて、Docker Desktopを活用することができます。インストール手順はディストリビューションにより異なりますが、通常のアプリケーションインストールと変わりません。
【参考】:The Magic of Docker Desktop is Now Available on Linux 【参考】:Install Docker Desktop on Linux 【参考】:Install Docker Engine
Linux版Docker Desktopの動作要件
Linux版Docker Desktopは以下の要件が設定されています。
・プロセッサとメモリ 64ビットカーネルと仮想化のサポート KVMによる仮想化サポート QEMUバージョン5.2以降 4GB以上の空きメモリ
・システム Debian、Fedora、Ubuntuのいずれか(Archベースは実験的な扱い) systemdの利用 GnomeまたはKDEの利用
【参考】:Install Docker Desktop on Linux
Linux版Docker Desktopのインストール
Linux版Docker Desktopのインストールは、ディストリビューションによってコマンドが異なります。コマンドの実行例では、<version>はバージョン、<arch>はアーキテクチャを表します。
・ Debian・ UbuntuへのDocker Desktopのインストール
DEBパッケージを用いて、以下のようにinstallコマンドを実行します。
sudo apt-get update
sudo apt-get install ./docker-desktop-<version>-<arch>.deb
【参考】:Install Docker Desktop on Debian 【参考】:Install Docker Desktop on Ubuntu
・ FedoraへのDocker Desktopのインストール
RPMパッケージを用いて、以下のようにinstallコマンドを実行します。
sudo dnf install ./docker-desktop-<version>-<arch>.rpm
【参考】:Install Docker Desktop on Fedora
インストールが完了し、Docker Desktopを起動するには、次のようにコマンドを実行します。
systemctl --user start docker-desktop
Docker Engineのインストール
Docker Engineは、CentOS・Debian・Fedora・Raspbian・RHEL・SLES・Ubuntuの各ディストリビューションに対応します。2022年10月18日現在、Docker Engineの最新リリースは20.10.20です。
CentOSへのDocker Engineのインストール
CentOS 7および8、9でサポートされます。「centos-extras」リポジトリを利用します。
最初にリポジトリをセットアップします。
$ sudo yum install -y yum-utils
$ sudo yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
次に、Docker Engineをインストールします。
$ sudo yum install docker-ce docker-ce-cli containerd.io
バージョン指定する場合は、次のようにVERSION_STRINGを指定することができます。
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
Dockerを起動し、「hello-world」で動作を確認します。
$ sudo systemctl start docker
$ sudo docker run hello-world
【参考】:Install Docker Engine on CentOS
イメージの保管場所は”docker info”で確認可能で、実行時に指定することもできます。
Debian・RaspbianへのDocker Engineのインストール
Debianでは、Debian Bullseye 11 (stable)・Debian Buster 10 (oldstable)・Raspbian Bullseye 11 (stable)・Raspbian Buster 10 (oldstable)がサポートされます。
最初にリポジトリをセットアップします。
$ sudo apt-get update
$ sudo apt-get install ca-certificates curl gnupg lsb-release
次に、Docker公式GPGキーを追加します。
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
その後、stableリポジトリをセットアップします。
$ echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Docker Engineのインストールは以下の通りです。
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
Dockerを起動し、「hello-world」で動作を確認します。
$ sudo docker run hello-world
【参考】:Install Docker Engine on Debian
Fedora・ UbuntuへのDocker Engineのインストール
Linuxは個々のディストリビューションによって、インストールコマンドの用法に違いがあります。Fedoraは34・35、36がサポートされています。具体的な手順は以下のリンクをご確認ください。
【参考】:Install Docker Engine on Fedora
Ubuntuでは、64ビット版のUbuntu Jammy 22.04 (LTS)・Ubuntu Impish 21.10・Ubuntu Focal 20.04 (LTS)・Ubuntu Bionic 18.04 (LTS)がサポートされます。インストール手順は以下のリンクをご確認ください。
【参考】:Install Docker Engine on Ubuntu
Dockerが動作したら実際にアプリケーション開発に利用しましょう
Dockerは2021年8月31日の料金体系見直しで有償化が進んでいますが、個人ユーザや小規模事業者は引き続き「Personal」プランで無償利用ができます。お手軽にコンテナが活用でき、開発・テスト・デプロイ・運用のサイクルが効率化されますので、引き続き高い需要があると考えられます。
Dockerインストールが完了したら実際に公開レジストリを利用し、イメージ活用が可能です。開発に役立ちますので実際の利用をおすすめします。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから