主題2.06:コンテナ

  • 2022年6月12日
  • IT

2.06.1 コンテナの仕組み

コンテナ型仮想化

コンテナ型仮想化を構成する要素

・ホストOS … 物理マシンにインストールしたOS
・コンテナエンジン … コンテナを操作、管理するプロセス
・コンテナ … 区画化されたアプリケーション実行環境
・イメージ … コンテナの実行に必要なライブラリやアプリケーションをテンプレート化したファイル

名前空間(Namespace)による分離

cgroups(Control Groups)によるリソース管理

 cgroups(Control Groups)はプロセスをグループ化してグループごとにCPUやメモリなどのリソース割り当て・制限を実現できます。コンテナごとに名前空間を作成してcgroupsで制御することで、コンテナ単位でリソースを管理できるようになります。

2.06.2 Dockerコンテナとコンテナイメージの管理

Dockerのイメージやコンテナを管理する方法

Dockerコマンド

Dockerfile

Dockerのネットワーク

Linux版のDockerでのネットワーク構成

bridge … ホストと異なるネットワーク。コンテナ側のeth0インタフェースとホスト側の仮想インタフェース(veth)が直結し、docker0ブリッジ経由で外部のIPアドレスと通信できる(デフォルト)
host … コンテナはホストと同じネットワークインタフェース、IPアドレスを持つ
none … ネットワーク接続が無い。コンテナはlookbackインタフェースのみ持つ