検索
特集/連載

いまさら聞けない「Docker」とは? コンテナネットワークを知る基礎知識コンテナネットワークの基礎知識【第2回】

コンテナの利用が広がるきっかけになったのが「Docker」の登場です。Dockerのコンテナ利用における役割を解説するとともに、コンテナ運用時に重要なコンテナネットワークの基礎知識を紹介します。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

関連キーワード

Docker | ネットワーク


 コンテナ管理ツール「Docker」の登場は、コンテナが広まるきっかけをもたらしました。Dockerが登場する以前からコンテナの技術は存在していましたが、コンテナを利用するにはOSが持つ「名前空間」や「cgroup」といった複数の機能を組み合わせて、各コンテナ向けの隔離環境を作成する必要があり、コンテナを1つ立ち上げるのも骨の折れる作業だったのです。

 Dockerは下記3つの機能を備え、コンテナをより簡単に利用できるようにしています。

  • Build(構築)
    • アプリケーションの実行に必要なミドルウェアやライブラリをパッケージ化したファイル「コンテナイメージ」の作成
  • Ship(移動)
    • コンテナイメージの配布
  • Run(実行)
    • コンテナの実行

 OSが持つコンテナ技術を利用する点では、Docker登場以前との大きな違いはありません。コンテナイメージの作成やコンテナの実行といった煩雑な作業を簡素化したことで、コンテナ利用のハードルを大きく下げたことにDockerの意義があります。

 当初、Dockerは「Linux」向けに開発されました。2014年にDocker社とMicrosoftが提携を発表し、現在はサーバOS「Windows Server」でもコンテナ技術を活用してDockerを利用できます。例えば「ASP.NET」を使って「IIS」(Internet Information Services)向けに開発したWebアプリケーションをコンテナ化し、実行できます。ASP.NETはMicrosoftがWebアプリケーション向けに開発しているフレームワーク(特定の設計思想に基づくライブラリなどのソフトウェアやテンプレート、ドキュメントの集合体)、IISはWindows Server標準のWebアプリケーションサーバです。ASP.NETとIISをWindows Serverのコンテナ機能を使って動かすことで、Windows Serverにおいてもコンテナの可搬性と隔離性の高さを生かしたアプリケーションの実行が可能です。

コンテナネットワークを理解するための「Docker」の基本

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る