コンテナ: runC を制御するデーモン

Docker のインフラストラクチャ配管を構築するにあたり、コミュニティを支援するために、これらの配管コンポーネントをオープンソースとしてリリースすることに取り組んでいます。

本日、runC を制御するための新しいデーモン containerd をリリースします。パフォーマンスと密度を考慮して構築されており、最終的には Docker Engine に組み込まれる予定です。

コンテナ

Containerd は、 Open Container Initiative の runC と仕様の上に構築されています。 containerd は、ローカルシステム上のコンテナを管理するための GRPC API を提供するデーモンです。 Containerd は runC を活用して、チェックポイントと復元、seccomp、ユーザー名前空間のサポートなどの高度な機能を提供し、これらの機能を Docker に開放します。

スクリーンショット 2015-12-17 at 12.17.36午後


containerd は運用用に構築され、パフォーマンスのために最適化されています。 ラップトップでベンチマークを行い、1000個のコンテナを同時に開始すると、マシン全体を使用して毎秒126〜140個のコンテナの速度が得られます。 また、単一のホストで1つまたは2000のコンテナが実行されているかどうかに関係なく、コンテナを起動した後にコンテナを監視するためのリソース使用量は少なくなります。

また、ゾンビの刈り取りやランタイムテレメトリなど、長年の問題のいくつかを修正するために時間をかけました。 これにより、コンテナーだけでなくランタイムからもさまざまな統計を監視できます。

コンテナはアルファ版でリリースされており、Dockerなどに期待されるすべての機能を完成させるために、更新を続けます。 containerd は、将来のバージョンの Docker Engine でコンテナーを管理する配管コンポーネントです。 containerd の詳細については、 リポジトリ の docs ディレクトリ を参照してください。


ドッカーについてもっと知る