AWS、Docker Desktop代替となり得る「Finch」をオープンソースで公開。ローカルマシンに仮想環境とコンテナランタイム、ビルドツールなど一式を導入

今回は「AWS、Docker Desktop代替となり得る「Finch」をオープンソースで公開。ローカルマシンに仮想環境とコンテナランタイム、ビルドツールなど一式を導入」についてご紹介します。

関連ワード (利用者、実現、承知等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


AWSは、ローカルマシン上にLinuxコンテナのランタイム、ビルドツール、コマンドラインツールなど一式を簡単にインストールし、コンテナを用いた開発環境を開始できるソフトウェア「Finch」をオープンソースで公開しました。

fig

Today we are happy to announce a new open source project, Finch.

Finch is a command line client for building, running, and publishing Linux containers.

Learn more in this blog from @estesp and @ChrisShort https://t.co/5qDdio806E#AWSCloud #containers #opensource pic.twitter.com/TDfcYlwwIs

— AWS Open Source (@AWSOpen) November 22, 2022

現時点では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統合など機能拡張による差別化を試みているようです。

  • Kubernetes環境をWindows 10/macOSへ簡単にインストール。「Rancher Desktop」がオープンソースで公開
  • GUIでDockerコンテナのビルドやPodsのKubernetesへの展開を可能にする「Podman Desktop」が登場。新たなDocker Desktop対抗となるか
  • Docker DesktopがWebAssemblyランタイムを統合。コンテナと同様にWebAssemblyイメージを実行可能に

COMMENTS


Recommended

TITLE
CATEGORY
DATE
メルペイがバーチャルカード発行 Mastercardブランドでオンライン専用
企業・業界動向
2021-03-09 02:26
ライターの生存戦略 コデラはいかにしてニッチに立ち続けているのか (1/2 ページ)
くわしく
2021-05-29 04:39
「メタバース」の生みの親ニール・スティーブンスン氏、展望を語る
IT関連
2023-01-14 02:26
第93回アカデミー賞で、Apple TV+アニメと映画がノミネート
イラスト・デザイン
2021-03-17 07:25
ルンバ、国内累計出荷が400万台超え 2年で100万台増
くらテク
2021-02-18 12:42
オフィス・自宅に続く“第三の拠点”を確保 コワーキングスペース利用中の企業が「テレキューブ」も活用するワケ
PR
2021-03-02 23:40
スタートアップにはバイデン大統領のインフラ計画を支持する110兆円分の理由がある
パブリック / ダイバーシティ
2021-04-13 22:47
米運輸省が政府GPSを置き換えられるか11社を評価、全ユースケースに対応できたのは1社だけ
セキュリティ
2021-01-18 17:31
日立と産総研が共同開発した墨塗署名技術、ISO/IECに採用
IT関連
2024-08-29 02:21
Spectee、「Spectee Supply Chain Resilience」提供–サプライチェーンのレジリエンス実現
IT関連
2023-12-01 15:21
Dockerfileを解析、最適化やベストプラクティスをガイドしてくれる「Docker Buildチェック」機能が正式版に
Docker
2024-08-02 16:14
CTC、金融機関向けのデジタルマーケティング評価サービスを提供
IT関連
2023-06-10 18:37
マイクロソフト、「PrintNightmare」対策で「ポイントアンドプリント」デフォルトの動作変更
IT関連
2021-08-13 14:51
政府機関など対象に暗号資産犯罪やマネロンの検知・防止ツールを提供するチェイナリシスが約110億円調達
セキュリティ
2021-06-29 00:13