ダブリンで開催された「Open Source Summit Europe」で、筆者はChainguardの最高経営責任者(CEO)で創設者のDan Lorenc氏に、「アンディストリビューション」とはどういう意味なのかを尋ねた。Lorenc氏は、「われわれが『アンディストリビューション』という用語を使っているのは、それが技術的に正しいからだ。コンテナー内には、Linux以外のすべてのものがある。したがって、たとえLinuxをベースとしていても、それをLinuxディストリビューションと呼ぶのは適切ではない」と説明してくれた。
ほとんどの人がLinuxコンテナーと呼んでいるものは、「ハードウェア上で起動し、コンテナーランタイムを利用可能にするディストリビューションだ。そうしたディストリビューションの中で最もユーザーが多いのは、おそらくAlpineだろう。Wolfiはそれと正反対のものだ。Wolfiにはディストリビューションがない。最小限の構成であり、パッケージマネージャーさえ含まれていない」とLorenc氏は続けた。コンテナー化されたアプリケーションを実行するのに必要最低限のものだけを備えている。
Lorenc氏は、この新しい異なるLinuxを作成するために、「われわれは、Alpineチームに在籍していたメンバーを大勢起用した」と述べ、「しかし、Alpineはコンテナー用に設計されたものではなく、元々、ルーターやファームウェアなどを想定して設計されたものだ。Alpineがコンテナーにとって魅力的だったのは、適切なサイズとセキュリティを備えていたからだ」とした。Wolfiはセキュリティのために、ミニマリスト的なアプローチを極限まで追求している。
Lorenc氏は、「依存関係を可能な限り最小限に抑えることで、イメージの監査、更新、および転送を簡素化したり、潜在的な攻撃対象領域を減らしたりすることが重要だと考えている。Wolfi(最も小さくて柔軟なタコにちなんで名付けられた) は、これらのコンテナー化された環境を最大限に活用し、なおかつセキュリティも最大化できるように、一から設計されている」と説明した。
Linuxカーネルをベースに何かしらのカスタマイズを加えてパッケージ化したものなら、それは「Linuxディストリビューション」なのでは?
ディストリビューションではない、とする理由がよくわからないな。
WTH is an Undistro?
If you made it this far and have been asking yourself what the heck we mean by undistro – you’re in luck. We refer to Wolfi as an undistro because it is not a full Linux distribution designed to run on bare-metal, but a stripped-down one designed for the cloud-native era. Most notably, we don’t include a Linux kernel, instead relying on the environment (such as the container runtime) to provide this.
WTH は Undistro ですか?
ここまで来て、undistro とは一体何を意味するのか自問自答しているなら、あなたは幸運です。 Wolfi は、ベアメタルで実行するように設計された完全な Linux ディストリビューションではなく、クラウドネイティブ時代に向けて設計された機能を取り除いたディストリビューションであるため、アンディストリビューションと呼んでいます。 最も注目すべき点は、Linux カーネルを含めず、代わりに環境 (コンテナー ランタイムなど) に依存してこれを提供することです。
We refer to Wolfi as an undistro because it is not a full Linux distribution designed to run on bare-metal, but a stripped-down one designed for the cloud-native era. Most notably, we don’t include a Linux kernel, instead relying on the environment (such as the container runtime) to provide this.
Wolfi は、ベアメタルで実行するように設計された完全な Linux ディストリビューションではなく、クラウドネイティブ時代に向けて設計された機能を取り除いたディストリビューションであるため、アンディストリビューションと呼んでいます。 最も注目すべき点は、Linux カーネルを含めず、代わりに環境 (コンテナー ランタイムなど) に依存してこれを提供することです。
コンテナでの実行に特化して、諸々のハードウェアサポートを切り捨ててるという感じか?
カーネルを含めないというのはベースイメージに含めないという意味だろうか?