プロダクト開発・ITシステム・品質・運用

コンテナ(コンテナ技術)

コンテナは、OSレベルの仮想化とアプリケーションのパッケージングを組み合わせた技術で、アプリケーションを持ち運びや再利用、自動化がしやすい形でまとめて実行する仕組みです。

NISTの「アプリケーションコンテナセキュリティガイド」(SP 800-190、IPAが日本語訳を公開)によると、仮想マシン(VM)はハイパーバイザーによってハードウェアのレベルで分離され、それぞれが完全なゲストOSを含みます。これに対してコンテナは、複数のアプリケーションが同じホストOSのカーネルを共有しながら、互いに分離された状態で動きます。そのため、Linux向けに作ったコンテナはLinuxのホストで動かすといったように、OSの系統に依存します。

コンテナの実行に必要なファイルをまとめたものはコンテナイメージと呼ばれ、開発環境で作ったイメージをテスト環境や本番環境へ変更なしで移して動かせるように設計されるのが一般的です。同ガイドは、稼働中のコンテナには手を加えず、更新時は新しいコンテナに置き換える運用(イミュータビリティ)や、データをコンテナの外部のデータベースなどに保存すべきことにも触れています。代表的なプロジェクトとしてDockerが挙げられています。

環境の違いによる不具合を減らしやすい一方で、同ガイドは、静的な運用を前提とした従来のセキュリティツールや手順は見直しが必要になる場合があると指摘し、イメージに含まれる脆弱性などのリスクと対策を整理しています。

参考資料

「コンテナ」が出てくる記事

この用語が出てくる記事はまだありません。

「システム・品質・運用」の他の用語

用語の先にある、自社の新規事業の進め方を相談する

「コンテナ」をはじめ、進めるうえでの論点を、オンラインでご相談いただけます。

費用0円・オンライン・契約不要。2営業日以内にメールでご連絡します。

お問い合わせ