【こんてな】
コンテナ とは?
最終更新:
💡 アプリを「どこでも同じように動く箱」に入れる
アプリケーションと、その実行に必要なライブラリや設定をひとまとめにして、隔離された環境で動かす技術。Dockerが代表的。
📌 このページのポイント
- ホストOSのカーネルを共有するため、OSを丸ごと持つ仮想マシンより少ない資源で多くのアプリを動かせる
- Dockerなどで作成・実行し、数が増えたらKubernetesなどでオーケストレーション(運用管理)する
- 必要なものをイメージにまとめるので「自分のPCでは動くのに本番では動かない」問題を減らせる
- 仮想マシンと対立するものではなく、クラウドでは仮想マシンの上でコンテナを動かすことも多い
コンテナって何が嬉しいの?
仮想マシンとの違いは?
Dockerfileって何?
Kubernetesも必要?
たくさんのコンテナを複数のサーバーで運用するなら、Kubernetesのような仕組みが役立つよ。コンテナの数の増減、落ちたコンテナの再起動や作り直し、少しずつ入れ替える更新(ローリングアップデート)を自動で面倒みてくれるんだ。ただし覚えることが多いから、小規模ならDocker Composeや、クラウドのコンテナ実行サービス(Cloud Runなど)で足りることも多いね
まとめ:ざっくりこれだけ覚えればOK!
「コンテナ」って出てきたら「アプリを環境ごとパッケージ化する技術」と思えればだいたいOK!
📖 おまけ:英語の意味
「Container」 = 容器・入れ物
💬 輸送用コンテナのように、中身(アプリ)を標準化された箱に入れてどこにでも運べるイメージだよ