runcとは
runcとは、OCI Runtime Specificationに基づいて作られたKubernetesやDockerの低レベルなランタイムで、オープンソースソフトウェアとして公開されています。runcは、単独ではコンテナの起動と動作を管理するためのCLIツールとしても利用することができます。
runcの歴史
2017年に、オープンコンテナイニシアティブ(OCI)が次の2つの仕様を作成しました。
- コンテナのランタイムに関する仕様(Open Container Initiative Runtime Specification)
- コンテナイメージフォーマットに関する仕様(Open Container Initiative Image Format
Dockerは、この仕様にしたがって図のようないくつかの要素に分割されました。
runcは、この分割の過程で低レベルのランタイムとして、Dockerから分離されたものです。
runcのアーキテクチャ
Dockerから分離して作成されているため、runcコマンド自体がdockerコマンドのサブセットのような位置づけになっています。
runcでは、すべてのコンテナが一つのカーネルを共有して動作します。そのため、不適切なコンテナが存在した場合には、他のコンテナに影響が及ぶ可能性があり、セキュリティ的に脆弱だと懸念されています。
しかし、現時点では最も一般的で、汎用的な実装となっています。
runcは、RedHat Enterprise Linux 7.6以降で採用されているPodmanからも利用されています。
低レベルのランタイムとしては、runcの他にgVisor、Kata Containerなどがあります。
【カテゴリ】:システム管理  仮想化  オープンソースソフトウェア  
【共催セミナー】研修管理・運用の負担を軽減 学習管理システム(LMS)紹介セミナー
日程: | 5月23日(木)Webセミナー「BigBlueButton」を使用します。 |
内容: | 社内研修の課題を解決できる学習管理システム(LMS)について紹介します。 |
ご興味のあるかたはぜひご参加ください。 |
関連用語
- Kubernetesとは
- Dockerとは
- gVisorとは
- Kata Containerとは
- containerdとは
- CRI-Oとは
- rktとは
- Podとは
- podmanとは
- Deploymentとは
- ReplicaSetとは
- Minikubeとは
- Microk8sとは
- Dockerfileとは