Amazon Web Services(AWS)は、Linuxコンテナの構築、実行、公開のためのオープンソースコマンドラインクライアント「Finch」を発表した。「Lima」「nerdctl」「containerd」「BuildKit」といったデファクトスタンダードのオープンソースコンポーネントを活用し、コンテナの実行や構築を簡単に開始できる。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Amazon Web Services(AWS)は2022年11月22日(米国時間)、Linuxコンテナの構築、実行、公開ができるオープンソースのコマンドラインクライアント「Finch」を発表した。
Finchは「Lima」「nerdctl」「containerd」「BuildKit」など、デファクトスタンダードのオープンソースコンポーネントとともに、ネイティブmacOSクライアントを簡単にインストールできる。ローカルでコンテナを作成して実行したり、Open Container Initiative(OCI)準拠のコンテナイメージを構築して公開したりできる。
Limaは、macOS上でLinux仮想マシンを実行できるソフトウェアだ。このLinux仮想マシンはコンテナランタイムのcontainerdを含み、ファイル共有やポートフォワーディング(Windows Subsystem for Linux《WSL》2に似た)を自動的に利用できる。nerdctlは、containerdに対応したDocker互換のCLI(コマンドラインインタフェース)。BuildKitは、ソースコードを変換してアーティファクト(成果物)をビルドするためのツールキットだ。
Finchは、コンテナツールの選択肢を増やすのではなく、こうした他のオープンソースプロジェクトを簡単にインストールして使えるようにするとともに、プロジェクト同士を連携させるシンプルなネイティブクライアントを提供し、これらのプロジェクトの利用や開発を促進することを目的としている。
Finchが提供するシンプルなクライアントは、nerdctlと統合されている。Finchのコア機能となるビルド/実行/プッシュ/プルコマンドは、nerdctlに依存している。containerdと連携してコンテナを管理し、BuildKitと連携してOCIコンテナイメージのビルドを処理する。これらのコンポーネントは全て、Limaによって管理される仮想マシン内で協調的に動作する。
Finchを使えば、細部を気にすることなく、こうした既存プロジェクトを活用してコンテナの実行や構築を開始できる。
Finchはまだ、基本的な機能を備えた初期段階にあり、バージョンは「0.1.0」となっている。現在はmacOS(IntelまたはApple Silicon M1システム)のみの対応だが、将来的にWindowsやLinuxプラットフォームもサポートする計画だ。さらに、開発者が特定のユースケースのために独自の拡張機能や付加価値機能を作成できるようにすることも計画している。
AWSでは、ローカルコンテナとAWSクラウドサービスとの統合を容易にする拡張機能の要望が出てくることを想定している。この機能は、Finchが依存するオープンソースのコア機能や上流の依存関係に影響したり、それらを断片化させたりしないよう、オプトインの拡張機能として実装される見通しだ。独自のリリースサイクルを持つ別のプロジェクトとして維持されることになるという。
他には、ゲストOSのフットプリントをより小さくすることや、継続的なパフォーマンス改善、安定性と使い勝手の向上も計画されている。
Finchのインストーラは、Finchとその依存関係をシステム内の独自の領域にインストールするため、Finchは他のコンテナ開発ツールと共存させることができる。Finchは新しいプロジェクトであり、他のツールを直接置き換えることは意図していないため、他のコマンド名をFinchにエイリアスしたり、Finchにリンクしたりすることは推奨されていない。
Copyright © ITmedia, Inc. All Rights Reserved.