Windows 10 HomeエディションでDockerを実行する方法【VirtualBox活用】
最近、チュートリアル動画を見て学習していたところ、その内容を実際に試すには自分のマシンでDockerが動いている必要があることが分かりました。ここまでは順調です。
しかし、最新版のDockerはWindows 10 Pro、Enterprise、Educationのいずれかを要求します。つまり、私のように個人のノートPCにWindows 10 Homeしか入っていない場合、Dockerは使えない……と思いきや、実はまだ諦める必要はないのです。
以下でその方法をご紹介します。
全体の状況整理
まず、現状を簡単にまとめましょう。何を実現したいのか、そして今何を持っているのか?
私たちのマシンにはWindows 10 Homeがインストールされています。同じマシン上でDockerを動かし、Dockerイメージの作成やコンテナの実行ができるようにして、より効率的に学び、成長していきたいのです!
具体的な手順
目標が定まったところで、その達成方法を見ていきましょう。以下は私が実際に試した手順です。私の環境ではうまくいったので、皆さんにもシェアしたいと思います。StackOverflowを行き来して何日も無駄にする人が一人でも減れば幸いです。
いろいろ調べた結果、ある記事に行き当たりました。それによると、Linux仮想マシンを活用し、その上でDockerコンテナを動かすことで、Windows 10 HomeでもDockerを使用できるとのこと。さっそく手順を見ていきましょう。
ステップ1:必要なソフトウェアのインストール
まず「Oracle VM VirtualBox」というソフトウェアをインストールします。これにより、物理マシン上に複数の仮想マシンを構築できるようになります。今回はLinuxが動く仮想マシンを作成し、そこにDockerを載せるという構成です。
次に、WindowsのパッケージマネージャーであるChocolateyを使い、PowerShellからdocker-machineをインストールします。以下のコマンドを実行してください:
choco install docker-machineお好みのbashターミナルアプリを開き、次のコマンドを実行します:
docker-machine create --driver virtualbox defaultこれにより、「default」という名前のDocker用仮想マシンが作成されます。
ステップ2:設定
次に、Dockerコンテナ実行時にどのポートを公開するかを設定します。Oracle VM VirtualBox → default仮想マシン → 設定 → ネットワーク → アダプター1 → ポートフォワーディング の順に画面を開いてください。

ここで最も重要なポイントがあります。Dockerがハードディスク上のボリュームをマウントできるようにしておく必要があるのです。デフォルトではC://Users/ディレクトリからしかマウントできません。
別のパスを追加したい場合は、Oracle VM VirtualBoxのGUIを開き、default仮想マシンを選択して「設定 > 共有フォルダー」へ進みます。デフォルト設定のまま使う場合は、プロジェクトを必ず「Users」ディレクトリ配下(例:C:\Users\{your project})に置くことを忘れないでください。
私はこの点を見落としてしまい、「Couldn't find package.json」というエラーが出続ける原因が分からず、数日間頭を抱えることになってしまいました……。
ターミナルで以下のコマンドを実行し、仮想マシンを起動します:
docker-machine start defaultステップ3:環境変数の設定
続いて、Dockerの環境変数を設定します:
docker-machine env defaultこれにより、DockerクライアントやDocker Composeが、「default」という名前を付けたLinux仮想マシン上で動作しているDocker Engineと通信できるようになります。
環境によっては、さらに以下のコマンドの実行が必要な場合もあります:
@FOR /f "tokens=*" %i IN ('"C:\ProgramData\chocolatey\lib\docker-machine\bin\docker-machine.exe" env') DO @%i注:コマンド内のパスは環境によって異なる場合があります。
docker-compose upなどを使いたい場合は、Docker Toolsもインストールする必要があります。PowerShellで以下のコマンドを実行してください:
choco install docker-cli
choco install docker-composeこれで、Windows 10 HomeでDockerを使い始めるために必要なものがすべて揃いました。
まとめ
必要なものがすべて揃ったので、あとは実際の学習に時間を使うだけです。Docker関連のチュートリアルに取り組むのも、書籍を読んで知識を深めるのも自由です。次に何をするにしても、必要なツールはすべて手に入っています。
私はまず冒頭で紹介したチュートリアルを完走し、その後はすべてのプロジェクトでDockerを使うようになるかもしれません。
ちなみに、調査の過程でDockerに特化した有望な書籍を見つけました。Ian Miell氏著の『Docker in Practice』です。興味があれば、ぜひ一度チェックしてみてください。
補足:本記事で紹介しているのはDocker Toolbox時代の手法です。現在ではWSL2(Windows Subsystem for Linux 2)を利用した「Docker Desktop for Windows」が公式に提供されており、Windows 10 Homeでも利用可能です。新規に環境を構築する場合は、こちらの方法も併せて検討することをおすすめします。
最後までお読みいただきありがとうございます!
参考資料
- https://www.virtualbox.org/
- https://www.sitepoint.com/docker-windows-10-home
- https://www.youtube.com/watch?v=6Yfm5gHQjaQ&list=PLnTRniWXnjf8YC9qJFLSVCrXfS6cyj6x6&index=2
- https://github.com/mihailgaberov/microservices
- https://support.divio.com/en/articles/646695-how-to-use-a-directory-outside-c-users-with-docker-toolbox-docker-for-windows
-
MacでWindowsを使う方法|Parallels・Boot Campなど5つの手段を徹底比較
Macは安全性と快適な操作性で知られています。しかし、「Windows専用のソフトウェアを使いたいから」という理由で、Windowsからの乗り換えをためらっている方も多いのではないでしょうか。 実は、その心配は不要です。仮想マシン(Virtual Machine)などの仕組みを活用すれば、1台のMac上でmacOSとWindowsの両方を利用することができます。再起動なしにOSを切り替えられる方法もあれば、ネイティブ性能でWindowsを動かせる方法もあります。 この記事では、MacでWindowsを実行する代表的な5つの方法(Parallels Desktop、VMware Fusion、B
-
Windows 10(Homeエディション)で自動更新を完全に無効化する4つの方法
最新のWindows 10では、MicrosoftがすべてのPCに最新のセキュリティパッチ、パフォーマンスおよび安定性の改善を行き渡らせるため、累積更新プログラムを自動的にインストールする仕様になっています。しかし中には、一部の更新プログラムをすぐにインストールされたくないユーザーもいます。「Windows 10が勝手に更新プログラムをダウンロードしてインストールしてしまうが、自動更新がシステムやネットワークリソースを消費するので、OSを更新したくない」という声も少なくありません。Windows 10ではWindows Updateの制御がやや難しくなっていますが、グループポリシーやレジストリ