AWSが「Docker Desktop」代替となり得る「Finch」をオープンソースで公開 ローカルマシンに仮想環境・ビルドツールなど一式を導入
米Amazon Web Servicesが、ローカルマシン上にLinuxコンテナのランタイム、ビルドツール、コマンドラインツールなど一式をインストールし、コンテナを用いた開発環境を開始できるソフトウェア「Finch」をオープンソースで公開。現時点ではIntelプロセッサもしくはAppleシリコン搭載のMacにのみ対応する。
この記事は新野淳一氏のブログ「Publickey」に掲載された「AWS、Docker Desktop代替となり得る「Finch」をオープンソースで公開。ローカルマシンに仮想環境とコンテナランタイム、ビルドツールなど一式を導入」(2022年11月24日掲載)を、ITmedia NEWS編集部で一部編集し、転載したものです。
米Amazon Web Servicesは、ローカルマシン上にLinuxコンテナのランタイム、ビルドツール、コマンドラインツールなど一式を簡単にインストールし、コンテナを用いた開発環境を開始できるソフトウェア「Finch」をオープンソースで公開しました。
現時点ではIntelプロセッサもしくはAppleシリコン搭載のMacにのみ対応しますが、今後WindowsやLinuxにも対応する予定です。
コンテナ環境の構築を簡単にするFinch
ローカルマシンにコンテナを用いた開発環境を導入するには、仮想マシンの環境を用意してLinuxをインストールし、その上に「containerd」のようなコンテナランタイム、「Buildkit」などのビルドツール、それらをコマンドラインから操作するDockerコマンド群などを整備する必要があります。
これらをまとめて簡単に導入できるソフトウェアとして代表的なのが「Docker Desktop」です。Docker Desktopを導入すると、WindowsやMacの中に仮想マシンが用意され、そこにLinux OSとコンテナの実行やビルドのためのコンテナランタイムやコマンドラインツールなど一連のDocker関連ソフトウェア群が整備されます。
今回、AWSがオープンソースとして公開した「Finch」は、こうしたコンテナを用いた開発環境をオープンソースのソフトウェア群を組み合わせることで簡単に構築し、コマンドラインから利用できるようにしたものです。Docker Desktopによる簡単な環境構築を代替し得るものと言えます。
具体的には、macOS上にLinux仮想マシンを構築する「Lima」、Limaの中にデフォルトで含まれているコンテナランタイムのcontainerd、ビルドツールのBuildKit、Dockerを用いなくともDockerコマンドのようにコマンドラインからcontainerd経由でコンテナを操作できる「nerdctl」(nerdctlのnerdはcontainerdのnerd)などが用いられ、FinchによってmacOSの上に簡単にコンテナ環境が構築されます。
これによりmacOS上でコマンドラインからコンテナのビルド、ラン、リポジトリへのプッシュ、プルなどが可能になるわけです。
ちなみにAWSがFinchの公開を発表するブログ中で、NTTの須田瑛大(すだ あきひろ)氏のコメントが次のように紹介されています。
Akihiro Suda, creator of nerdctl and Lima and a longtime maintainer of containerd, BuildKit, and runc, added “I’m excited to see AWS contributing to nerdctl and Lima and very happy to see the community growing around these projects. I look forward to collaborating with AWS contributors to improve Lima and nerdctl alongside Finch.”
nerdctlとLimaの生みの親であり、containerd、BuildKit、runcの長年のメンテナーである須田瑛大氏は、「AWSがnerdctlとLimaに貢献し、これらのプロジェクトを中心としたコミュニティが成長しているのを見て、非常にうれしく思っています。AWSのコントリビュータと協力して、Finchと一緒にLimaとnerdctlを改善することを楽しみにしています」と述べていました。
参考:Docker EngineのメンテナにNTT須田氏が就任。「Dockerの品質の維持・向上を中心に取り組んでいく」
AWSとの統合機能は拡張機能になる見通し
Finchはこのように既存のオープンソースソフトウェアをうまく活用することで、macOS(今後はWindows、Linuxなどへの対応も計画)のOSの上にコンテナ環境を構築するためのソフトウェアです。そして今後どのようなオープンソースを選択していくかは、つねにベンダーニュートラルに考えたいとAWSは説明しています。下記のブログからの引用です。
The core Finch client will always be a curated distribution composed entirely of open source, vendor-neutral projects.
Finchの中核となるクライアントツールは、常にオープンソースでベンダーニュートラルなプロジェクトのみで構成された精選されたディストリビューションとなる予定です。
一方、AWSの利用者はAWSに特化した使いやすさを実現してほしいという要望があることも承知しているとし、そこは拡張機能で対応していくとも説明しています。
We know that AWS customers will want extensions that make it easier for local containers to integrate with AWS cloud services. However, these will be opt-in extensions that don’t impact or fragment the open source core or upstream dependencies that Finch depends on.
AWSのお客様は、ローカルコンテナとAWSのクラウドサービスとの統合を容易にする拡張機能を求めていることは承知しています。しかしこれらについては、Finchが依存するオープンソースのコアやアップストリームの依存関係に影響を与えたり、断片化したりしない、オプトインの拡張機能になるでしょう。
Finchはまだ開発の初期段階であり、現在はmacOSのみです。今後さらに開発を進め、Windows、Linuxへも対応していく予定とされています。そしてAWSは、Finchの目標を次のように説明しています。
Our goal is to provide a minimal and simple build/run/push/pull experience, focused on the core workflow commands.
私たちの目標は、コアワークフローのコマンド群に焦点を当て、ミニマルでシンプルなビルド/ラン/プッシュ/プルの体験を提供することです。
As the project evolves, we will be working on making the virtualization component more transparent for developers with a smaller footprint and faster boot times, as well as pursuing an extensibility framework so you can customize Finch however you’d like.
プロジェクトが進むにつれて、私たちはフットプリントを小さくして起動時間を速くすることで仮想化コンポーネントをより透過的にすることに取り組み、Finchをカスタマイズできるように拡張性のフレームワークの開発も進める予定です。
Docker Desktopの代替となり得るソフトウェアがいくつか登場してきた一方で、Docker DesktopはWebAssembly統合など機能拡張による差別化を試みているようです。
関連記事
- 「Docker」一部有料プラン値上げ、27日から 「Team」は100アカウントまでに制限
米Dockerは、コンテナ仮想化ソフトウェアの料金プラン「Docker Team」「Docker Business」を値上げすると発表した。年間契約でTeamは月額7ドル、Businessは24ドルに。 - 「Docker Desktop for Linux」登場 WindowsやMac版と同じ機能や操作を提供、Raspberry Pi OSにも対応
米Docker社がLinux版のDocker Desktop「Docker Desktop for Linux」を発表。WindowsやMacと同じDocker Desktopの機能や操作をLinux環境でも使えるという。数週間以内に64ビット版のRaspberry Pi OSにも対応する予定。 - Docker Desktop、無料で使える猶予期間が終了 従業員数250人以上、年間売り上げ1000万ドル以上の組織は有料に
Docker Desktopの料金が変わり、従業員数250人以上かつ年間売上高1000万ドル以上の組織など向けのプランが有料になった。個人利用もしくはスモールビジネス、教育機関、非商用のオープンソースプロジェクトでは引き続き無料で利用できる。 - Docker DesktopとDocker Hubがシングルサインオンに対応
Docker DesktopとDocker Hubがシングルサインオンに対応。サブスクリプションの最上位プランを契約するユーザーに提供する。 - Docker Desktopが有料化へ 従業員数250人未満・年間売り上げ1000万ドル未満の組織などは引き続き無料
Docker社がこれまで無料で提供してきたDocker Desktopの有料化を発表した。従業員数250人未満かつ年間売上高1000万ドル未満、個人利用、教育機関、非商用のオープンソースプロジェクトであれば、引き続き無料で利用できる。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.