
【Docker基礎】DockerはLinuxを土台としている
Docker は基本的に Linux OS を前提とした技術です。
なぜなら、Docker のコンテナはホストの Linux カーネルを利用して軽量な環境を構築する仕組みだからです。そのため、コンテナ内で動かすソフトウェアも Linux 用のプログラム でなければ動作しません。
ここでは、なぜ Docker が Linux を土台としているのか、そして Windows や Mac でも Docker が使われる仕組みについて解説します。

なぜ Docker は Linux が必須なのか
- Docker が Linux カーネルの機能を使うから
・Docker は、名前空間(namespaces)や cgroups といった Linux 特有の機能によって、コンテナ内と外部を隔離
・そのため、ホスト OS は Linux である必要がある。 - コンテナ内の OS 周辺部分も Linux 前提
・コンテナには “OSもどき” が入るが、それは Linux 系のディストリビューションを前提とした周辺部分
・Windows 向けや Mac 向けのソフトウェアは、コンテナ内部では動作しない - サーバー用途との親和性
・サーバーで使われる OS は Linux 系が主流
・Docker 自体がサーバー運用を想定して広まった背景が大きい。
コンテナには Linux 用のプログラムを入れる
Windows や Mac のソフトウェア(Word, Excel, Photoshop, Illustrator など)は、Docker コンテナには入れられません。
- コンテナ内で動くのは Linux 用バイナリ
- もし Windows や Mac 用ソフトを動かそうとしても、カーネルが異なる ので動作しない。
Windows や Mac で Docker を動かす仕組み
「Docker は Linux 上でしか動かない」なら、Windows や Mac で普段使われている Docker はどう動いているのでしょうか?
実は、どちらのケースでも 裏で Linux OS が稼働 しています。

- 仮想マシン(VirtualBox, VMware など)上に Linux をインストール
・Windows や Mac のホスト OS の上に仮想マシンを立て、そこに Linux を入れる。
・その Linux 上で Docker Engine を起動してコンテナを動かす - Docker Desktop を利用
・「Docker Desktop for Windows(WSL2)」や「Docker Desktop for Mac」
・これらのパッケージにあらかじめ “軽量な Linux 環境” が同梱され、ユーザーが OS の違いを意識せず Docker を使えるようになっている。
WSL2 (Windows Subsystem for Linux 2)
- Windows 10/11 で利用できる Linux カーネルを実装した軽量仮想環境
- Docker Desktop for Windows と連携することで、Windows ユーザーでも Docker を快適に扱える。
- 従来の Hyper-V ベースの仮想マシンより高速かつリソース効率がよい。
まとめ
- Docker は Linux カーネルを利用する技術 なので、どうしても土台となる OS は Linux が必要
- コンテナも Linux 用ソフトウェア を前提としており、Windows や Mac のアプリはそのままでは動かない
- Windows/Mac で Docker を使う場合は、裏側に 仮想環境や WSL2 を用いて Linux OS を強引に入れている
- とにかく「Docker を使うなら、どこかに Linux が必要」という点を押さえておきましょう
ここが Docker の大きな特徴であり、独自の制限でもあります。次の章では、具体的に Linux 環境を用意する手順や、Docker Desktop の導入方法などについては、3章の「Dockerを使ってみる」で解説していきます。