アプリ基盤編 第7章 / 全13章
コンテナ(Docker)とは
Container ・ Docker ・ イメージ
アプリを箱ごと運ぶ貨物船のコンテナ。中身(アプリ)と必要な道具(部品・設定)をまとめて箱に詰めれば、どの船(サーバー)でも同じように運べる。
図とさわれるデモで確かめる →
ポイント
- アプリと、動かすのに必要な部品をまとめて1つの箱(コンテナ)にする
- OSの中心部分は共有するので、仮想マシンより軽く、数秒で起動する
- 「自分のPCでは動いたのに、本番では動かない」が起きにくくなる
名前の由来
container入れ物(contain:中に保つ)
貨物船の「コンテナ」と同じ言葉。中身が何でも、同じ形の箱なら同じように積んで運べる。
仕事の現場では
コンテナにしておくと、開発PC・テスト環境・本番、さらには別のクラウドへも、同じ箱をそのまま持っていけます。特定のクラウドに縛られにくくなるのも利点です。
くわしく(正確な話)
- コンテナの設計図を Dockerfile、そこから作る箱のひな形をコンテナイメージと呼ぶ。
- イメージはレジストリという置き場に保存し、そこから各サーバーに配る。
- Docker は、コンテナを作って動かすための代表的なソフト。
- コンテナはOSの中心部分(カーネル)を共有するため、VMより分け隔ては弱い。用途に応じて使い分ける。
うまれ:Docker は2013年に公開され、コンテナを一気に広めた。
この章の用語(意味と語源)
- コンテナ Container
アプリと必要な部品をまとめて詰めた、持ち運べる箱。
OSの中心部分を共有するので、仮想マシンより軽く、数秒で起動します。
覚えておく:軽い・速い・どこでも同じ
語源contain(中に保つ)+ -er。ラテン語 con(ともに)+ tenere(保つ)から。
- Docker / Dockerfile ドッカー
コンテナを作って動かす代表的なソフト/コンテナの設計図。
語源docker は「港湾労働者(ドックで荷物を積み下ろしする人)」。
- コンテナイメージ Container Image
コンテナのひな形。ここから同じ箱をいくつでも作れる。
語源image(像・写し)。ラテン語 imago(似姿)から。
- レジストリ Registry
コンテナイメージを保管して配る置き場。
Docker Hub のほか、各クラウドにも用意されています。
語源register(登録する)。ラテン語 regerere(書き留める)から。