Apple製コンテナ向けmacOS UIアプリ「Davit」公開
原題: Show HN: Davit, a Apple Containers UI
なぜ重要か
Docker Desktop不要でApple Silicon最適化されたネイティブコンテナUIが登場したことで、Mac開発者の開発環境の選択肢が広がる。
開発者のWouter de Bieが、AppleのLinuxコンテナ基盤向けネイティブmacOSアプリ「Davit」をMITライセンスで公開した。Apple Siliconチップ搭載Mac(macOS 15以降)が対象で、Docker Desktopなしにコンテナの起動・管理・ファイル操作などをGUIで行える。Homebrewおよび公式サイトから無償入手可能。
「Davit」は、Appleが提供するオープンソースのコンテナデーモンとXPC経由で直接通信するmacOS向けネイティブアプリだ。ElectronやWebViewを使わず、SwiftUIで構築されており、CLIと同一の通信経路を利用する。
主な機能としては、コンテナの起動・停止・再起動・削除とともに、CPU・メモリ・IPアドレスのリアルタイム表示、ストリーミングログ、ファイルシステムブラウザ(ナビゲーション・アップロード・ダウンロード・削除)、ワンクリックでTerminalまたはiTermへのインタラクティブシェル接続などが含まれる。
コンテナはイミュータブルな仕様のため、「Edit & Recreate」機能を使って既存コンテナの設定をベースに新規コンテナを素早く作成できる。ポート、環境変数、マウント、リソース割り当てを数秒で変更可能だ。
イメージについては、Docker Hub・ghcr.io・quay.ioを含む任意のレジストリからPullでき、プライベートイメージ用の認証情報はmacOSのログインキーチェーンに保存され、コンテナCLIと共有される。
Appleのコンテナプラットフォームが未インストールの場合、Davitが署名済みインストーラーをダウンロードして自動でセットアップを行う。管理者権限は不要で、CLIのシェルへの追加も対応する。
AppleのVirtualization frameworkを活用し、各コンテナは独立した軽量VMとして動作するため、サブ秒単位の起動が可能で、コンテナごとに独立したIPアドレスが付与される。これはDocker Desktopとの主な差異の一つとして挙げられている。