コンテナとは?
こんてな
コンテナとは、アプリケーションとその実行に必要な環境をひとまとめにして隔離・軽量化した仮想化技術の単位のことです。
コンテナ(container)は、コンピュータ上でアプリケーションとその動作に必要なライブラリ・設定ファイル・実行環境をひとつのパッケージにまとめ、ホストOSのカーネルを共有しながら独立した空間として動作させる軽量な仮想化技術です。従来の仮想マシン(VM)がゲストOSごとリソースを占有するのと異なり、コンテナはOSカーネルを共有するため起動が速く、消費リソースが少ないという特徴があります。
コンテナの主な特徴は以下のとおりです。
- ポータビリティ:開発環境・テスト環境・本番環境でまったく同じコンテナイメージを使えるため「自分のPCでは動くのに本番で動かない」問題が解消される
- 軽量・高速:仮想マシンより起動が速く、同一ホスト上で多数のコンテナを効率よく動かせる
- 隔離性:各コンテナは独立したプロセス空間・ファイルシステム・ネットワークを持ち、互いに影響しない
- スケーラビリティ:需要に応じてコンテナ数を増減させ、柔軟にスケールアップ・ダウンできる
代表的なコンテナ技術としてDockerが広く普及しており、複数コンテナを束ねて管理するKubernetes(k8s)も現代のクラウドインフラの中核を担っています。マイクロサービスアーキテクチャとの親和性が高く、DevOps・CI/CDパイプラインに欠かせない技術となっています。
使い方・例文
「DockerコンテナにWebサーバーとデータベースをそれぞれ分けて動かし、開発環境と本番環境を統一する」のように使います。
この用語をシェア
最終更新: