一覧に戻る
Lv.2

コンテナ

Container

アプリを動かすのに必要なものを1つにまとめる技術。

簡単に説明すると

コンテナは、アプリ本体と動かすための設定をひとまとめにして、どこでも同じように動かせる仕組みだよ。 自分のパソコンで作ったアプリを別のサーバーに移すと、設定の差異によって動作しないことがあるんだ。コンテナを使えば、必要な道具がすべて箱に入っているため、環境を問わず動作させることができるよ。コンピューターの資源を抑えて運用できる技術として、多くのWebサービスで利用されているんだ。

名前のヒミツ

コンテナ(Container)は、もともとは荷物を運ぶための大きな箱という意味なんだ。ITの世界では、アプリとそれを動かす道具を1つに詰め込んだ「箱」を指すよ。物理的な貨物コンテナが、中身を気にせずどんな船でも運べるのと同じように、どんな環境でも同じように動かせることからこの名前がついたんだよ。

くわしく見てみよう!

コンテナとは、アプリを動かすためのプログラムや設定を仮想的な箱に詰め込んで、他の環境から切り離して実行する技術のことだよ。
1つのOSの上で複数の箱を独立して動かせるから、お互いに影響を与えずにアプリを動かせるんだ。
これによって、サーバーの資源を無駄なく使えるようになるよ。

ざっくり言うと、これまでの仮想化という技術は、パソコンの中に別のパソコンをまるごと作るような重い作業だったんだ。
でも、コンテナはアプリの動作に必要な最小限のパーツだけを共有するから、起動が早くて動作も軽いのが特徴だよ。
必要な時にすぐ立ち上げて、いらなくなったらすぐに消せる柔軟さがあるんだ。

コンテナは、開発から本番までの作業を効率化するために使われることが多いんだ。
開発者のパソコンで作ったコンテナをそのままクラウドサーバーに持っていけば、設定ミスで動かなくなる心配がなくなるよ。
代表的なソフトにはDocker(ドッカー)があって、Web開発で広く採用されている技術なんだ。