コンテナの歴史

コンテナの起源は1970年代に登場した UNIX のchroot システムコールに遡る. chroot システムコールはシステムのルートディレクトリを変更するシステムコールである. これにより簡易的な隔離環境を作ることができる. HTTP Serverなどで用いられ,ディレクトリトラバーサルなどの対策に使われた.

2000年には FreeBSD jail が生まれ,chroot以外にも様々な隔離機能が搭載され,この後に生まれてくるコンテナ型仮想化に踏襲された.

2006年頃,Linux 2.6 にて namespaces (後述) という機能が実装された. この機能を用いて登場したのが LXCDocker といった現代のコンテナ型仮想化ソフトウェアである.