- コンテナの基礎となる実装技術
CPU、メモリ、ハードディスクドライブ:1.cgroupは、リソースの制限を実現しました
cgroupの使用
ドッカーRUN -d -m 100Mのhttpd
2.namespaceリソース分離を実現
コンテナリソース分離の間で達成名前空間
3.unionfsユニオンファイルシステム
- Linuxはリソースの6種類に対応し、6つの名前空間を使用しています:マウント、UTS、IPC、PID、ネットワークとユーザ
名前空間のマウント
マウント名前空間コンテナは、ファイルシステム全体を聞かせています。
UTSは、名前空間
、そのコンテナは、独自のホスト名を持っているので、単純に、UTS名前空間を置きます。デフォルトでは、ホスト名のコンテナはその短いIDである、あなたは--hostnameまたは-hでパラメータを設定することができます。
名前空間IPC
IPC名前空間その容器は、プロセス間通信を実現するために、自身の共有メモリとセマフォ(セマフォ)の間であり、ホストIPCおよび他のコンテナと混合しないように
PID名前空間の
ホストで実行中のプロセスの形でコンテナ。容器は、ホストPID、PID =処理容器1内のプロセスに対応するプロセスのPIDとは異なるコースないホストシステムDプロセスです。言い換えれば、コンテナは、PID名前空間が提供する機能である、独自の独立したPIDを持っています。
ネームスペースネットワーク
、ネットワーク名前空間は、そのための容器は、独自の個別のネットワーク・カード、IPルーティングおよびその他のリソースを持っています。
名前空間のSer
ユーザ名前空間は、ホストユーザーはコンテナが作成された見ることができない、コンテナは、独自のユーザーを管理することができます。
- ポートマッピング
容器ポートランダムまたは特定のホストポートをマッピングする
外部ネットワークから容器内部へのアクセスを達成するために、サービスポートマッピングは
、本質的にアドレス転送底ipablesてなされたものであり、
ホストのランダムなポートマッピング容器ポートの1
2.容器ポートマッピングをホストの特定のポートに
特定のカード3上のランダムなポートのホスト・ポート・マッピングなどの容器
の容器のための特定のNICポートマッピング4.ホストコンピュータ上の特定のポート
オプション:ポートマッピング-p -P -Pランダムマッピング-pポートが特定のポートを指定 注:複数の利用、複数の-pポートをマッピングすることができたときに、コンテナの起動を
例1:-P#-Pランダムマッピングは、ホストのランダムなポートランダムマッピング用のコンテナ内のすべてのポートにある
-d -P httpdの実行ドッカ
実施例2:ホストが特定のポートにマッピングされる特定のマッピング、
コンテナ港:ドッカー実行は順番に次の81:80のhttpd#-p注ホスト・ポートを-p -d
実施例3:ホストが特定のネットワークカードにマッピングされるランダムポート固有のマッピング、
ドッカーラン-d -p 192.168.64.5::80のhttpd
実施例4:-p特定のマッピング特定のポート、ホストが特定のネットワークカードにマッピングされ
ドッカー実行-d -p 192.168.64.5:82:80のhttpd