【コンテナディー】
containerd とは?
最終更新:
💡 コンテナを動かす裏方の仕事人
containerdとは、ホスト上でコンテナイメージの取得・保存や、コンテナの起動・停止などを管理するコンテナランタイム。Docker Engineの内部で使われるほか、CRIを通じてKubernetesから利用できる。
📌 このページのポイント
containerdって、Dockerとは違うの?
なんでわざわざ分かれているの?
コンテナの管理を、別の仕組みからも利用できるようにするためだね。containerdは一つのホストの管理を担い、複数のホストへの配置などはKubernetesのような上位の仕組みが担当するよ。
Kubernetesは、必ずcontainerdを使うの?
KubernetesのDocker対応がなくなったと聞いたけど?
Kubernetes本体のdockershimというDocker Engine向けの連携部品は、v1.24で削除されたよ。それはcontainerdを唯一の標準にした、という意味ではないんだ。Dockerで作ったイメージも、対応するランタイムで引き続き使えるよ。
runcやCRIとも関係があるの?
CRIはKubernetesとの窓口だよ。一方、Linuxでコンテナを起動する際には、containerdがruncなどの低レベルのOCIランタイムを利用するんだ。運用時はCRIの有効化や、ランタイムとKubernetesの設定の対応も確認しよう。
まとめ:ざっくりこれだけ覚えればOK!
「containerd」って出てきたら「コンテナのイメージや起動・停止を管理する裏方」と思えばだいたいOK!
📖 おまけ:英語の意味
「containerd」 = コンテナのデーモン
💬 containerと、バックグラウンドで動くdaemonを表すdを組み合わせた名前だよ。コンテナを管理する常駐プロセスとして働くんだ。