目次
あなたのような読者が、MUOを支えています。当サイトのリンクを利用して購入された場合、アフィリエイト報酬を得ることがあります。続きを読む
Windowsは強大ですが、アプリケーションの開発やデプロイには向いていません。Dockerのようなコンテナ・プラットフォームは、クロスプラットフォームのアプリケーションを簡単に開発・拡張することができます。Windows 10と11でDockerを始める方法については、こちらをお読みください。
Dockerとは?
Dockerはオープンソースのプラットフォームで、開発者がコンテナ内でアプリケーションを効率的に構築、デプロイ、実行できるようにするものです。すべての依存関係がバンドルされているため、プロジェクトはどのような環境でも簡単にデプロイすることができます。
Dockerは、数あるコンテナ化プラットフォームの中でも、信頼性、機能性、拡張性に優れていることから人気があります。テストやデプロイにクリーンで軽量な環境を提供するDevOpsの必須ツールであるDockerエンジン上で動作する。Dockerは仮想マシンではなく、コンテナであり、オペレーティングシステムを仮想化するだけで、基盤となるハードウェアは仮想化しません。
とはいえ、他のものを試してみたいという方には、これらは最高のDockerの代替品となるでしょう。
Windows 10と11では、Docker DesktopとWindows Subsystem for Linux(WSL)経由でDockerにアクセスすることができます。Docker Desktopは、Windows、macOS、Linuxで利用可能で、複雑なアプリケーション環境の構成プロセスを簡素化することで、生産性を加速させることが知られています’。
しかし、代わりにコマンドラインインターフェース(CLI)を使ってアプリケーションをコンテナ化したい場合は、Windows 10と11、またはLinuxのターミナルでWSL 2を使用することができます。
Dockerを包括的に理解するための簡単な例として、フロントエンドのユーザーインターフェイス、バックエンドのサーバー、データベースを持つWebアプリケーションを想像してみてください。
Dockerを使えば、3つのモジュールを依存関係とともに別のコンテナに分離することができ、アプリケーションをあらゆるプラットフォームで開発、デプロイすることができます。また、あるモジュール(バックエンドサーバーなど)の容量を増やしたい場合、他のモジュールに影響を与えることなく、そのモジュールを直接スケールさせることができます。
なぜDockerを使うべきなのか?
多くの開発者がDockerに依存しているのは、アプリケーションの構成と依存関係を1つのコンテナにまとめられるからです。そして、これを1つのDockerイメージを使って実行することができます。また、Docker Hubを使って、Apache、Tomahawk、Ubuntuなど、何千もの一般にホストされているアプリケーションのDockerイメージをダウンロードすることができます。
Dockerコンテナは堅牢なので、サーバをホストするように構成することもできます。nginxのDockerコンテナは一般的にウェブサーバとして使用されています。さらに、前述のように、Dockerはアプリケーションのスケーリングやデプロイを驚くほど便利にしてくれます。
これは、DevOpsのフレームワークにおいて、従来の仮想マシンに比べて大きなアドバンテージとなります。また、Kubernetes(K8s)などのコンテナオーケストレーションサービスは、複数のDockerコンテナを効率的に管理するのに役立ちます。まとめると、Dockerはいくつかの方法で使用することができます:
- Linuxディストロを簡単に実行できる
- 学習やテストを目的としたWebサーバーを立ち上げる
- ポータブルデプロイアプリケーション
- アプリケーションを1つのイメージファイルにバンドルする
- CI/CDパイプラインの簡素化
もし、これらの機能の1つ—特にLinuxディストロを簡単に実行したい場合は、UbuntuをDockerコンテナとして実行するためのガイドをご覧ください。
Windows Subsystem for Linux(WSL)とは何ですか?
Windows Subsystem for Linuxは、WindowsユーザーがUbuntuやKaliなどのLinuxディストリビューションを、デュアルブートや専用の仮想マシンを構成することなく、Windows上で実行できるようにします。Windowsユーザーは、追加インストールのオーバーヘッドなしに、Linuxのコマンドラインツール、アプリケーション、ユーティリティに直接アクセスすることができます。
当初はWindows 10で発売されましたが、最新バージョン—WSL 2—では、安定性とパワーが大幅に向上しています。開発者としては、専用ハードウェアを気にすることなく、またWindowsのエコシステムから離れることなく、クロスプラットフォームアプリケーションを開発することで、WSLの恩恵を受けることができます。
WindowsでDocker Desktopを使ってDockerをインストールする方法
Docker Desktopは、スタンドアロンアプリケーションとして使用することもできますし、Windows Subsystem for Linuxと統合して、より良いパフォーマンスと効率的なリソース消費を実現することもできます。この2つの方法については、次のセクションで説明します。
Windows 10、11にDocker Desktopをインストールする場合:
これで、Docker Hubからサンプルイメージをダウンロードして、コンテナをテストすることができます。
WindowsでWSL 2を有効にする方法
WSL 2を通してDockerをインストールする前に、まずWSL 2をインストールする必要があります’。
Windows Subsystem for Linux 2は、Windows 10(Build 19041以降)およびWindows 11を実行しているユーザーに対して提供されます。古いバージョンのWindows 10を実行している場合は、手動でインストールする必要があります。
幸いなことに、Microsoftはこのツールを使ってLinuxディストロを簡単にインストールし、セットアップすることができます。ここでは、デフォルトのUbuntuイメージでWSL 2をインストールする方法を説明します:
インストールには時間がかかるので、待つ必要があるかもしれません。別のLinuxディストリビューションをインストールしたい場合は、以下のコマンドでインストールすることができます:
wsl — install -d.
を通じて、Linuxディストリビューションの一覧を見ることができます:
wsl.exe -l -o
Windows 10または11でWSL 2を安全に設定したら、Dockerをインストールします。
WSL 2バックエンドを持つDockerをWindowsにインストールする方法
Docker Desktopを統合し、バックエンドとしてWSL 2を使用することで、コンテナからより良いパフォーマンスを活用することができます。WSL 2は効率的な起動を提供し、動的なメモリ割り当てを使用してリソースの消費を向上させます。
Windowsで最適なパフォーマンスを得るためには、WSL 2にDocker Desktopを統合して、Dockerをインストールすることをお勧めします。いくつかのステップでそれを行うことができます:
Dockerを学んで、自分を差別化する
Dockerのおかげで、開発とデプロイが非常に簡単になりました。手強いソフトウェアエンジニアになりたいなら、DockerとKubernetesなどのコンテナオーケストレーションサービスを実際に体験することを強くお勧めします。