MacBookでDockerコンテナを開発したいけど、Linux環境に悩まされている——リモートVPSに切り替えるか、仮想マシンソフトウェアをインストールしてシステムが肥大化するのが面倒。LimaはこのようなmacOSユーザーのために設計されたツールで、軽量なLinux VMを通じて直接コンテナを実行し、クロスプラットフォーム開発の痛点を解決します。DevOpsエンジニアやコンテナ愛好者は、最小限の設定でローカルに本番環境をシミュレートし、ワークフローを加速しながらパフォーマンスを損なうことなく利用できます。
ワンクリックで起動するデフォルトのLinux VM、多様なディストリビューションをサポート
Limaの強みは極めてシンプルな起動プロセスにあります。ターミナルで lima start と入力するだけで、自動的にデフォルトのUbuntu VMがダウンロードされ、起動します。このVMにはcontainerdとnerdctlがプリインストールされており、すぐにイメージをプルしてコンテナを実行できます。従来のVMツールであるVirtualBoxと比べて、LimaはmacOSのネイティブなhypervisor.frameworkを利用しており、起動時間を大幅に短縮し、通常数分以内に準備が整います。
Ubuntuだけでなく、LimaはAlpineやFedoraなどのカスタムテンプレートもサポートしており、YAML設定ファイルを編集してイメージソースを指定するだけでディストリビューションを切り替えることができます。この柔軟性は特定のLinuxディストリビューションが必要な開発者に特に適しており、依存関係の再インストールの手間を避けることができます。

Docker CLIとnerdctlのシームレスな統合、コンテナ実行に障害なし
Lima VMを開いた後、あなたのDocker CLIコマンドは自動的にVM内で実行されます。例えば、docker run -it ubuntu bashはLinux環境で直接実行され、追加のプロキシやポートフォワーディングの設定は不要です。Limaに内蔵されているnerdctlはDocker互換のCLIツールで、Composeによるマルチコンテナデプロイをサポートし、macOSユーザーがネイティブLinux上で操作しているかのような体験を提供します。
この設計はコンテナ開発において特に便利で、すべての標準Dockerワークフローを保持しつつ、Apple Silicon上のDocker Desktopのライセンス制限やパフォーマンスボトルネックを回避します。テスト結果によると、Lima VMのコンテナ起動速度はネイティブLinuxと同等で、CI/CDパイプラインのローカル検証に適しています。
ファイル共有とネットワークブリッジ、VMとホストの相互作用がスムーズ
LimaはデフォルトでユーザーホームディレクトリをVMにマウントしており、コードファイルを直接編集できるため、コピーする必要がありません。virtiofs技術を通じて、ファイルアクセス速度はネイティブに近く、従来の9pプロトコルを大きく上回ります。ネットワーク面では、Limaはブリッジモードを提供し、VMは独立したIPを取得し、ホストからサービスにアクセスしやすくなります。例えば、localhost:8080で実行されているWebアプリにアクセスできます。
Kubernetesユーザーにとって、Limaはkindとminikubeをサポートし、VM内でクラスターを直接デプロイしてクラウド環境をシミュレートします。設定ファイルは~/.lima/にあり、gitバージョン管理をサポートしているため、チームメンバーがVM設定を簡単に同期できます。
活発なコミュニティサポートとマルチプラットフォームの拡張オプション
プロジェクトはGitHub上に詳細なドキュメントとissueトラッカーがあり、バグの追跡やコードの貢献が容易です。LimaはColimaやOrbStackなどのツールに採用されており、その安定性を示しています。主にmacOS向けですが、QEMUを通じてLinuxホストに拡張され、将来的にはさらに多くのアーキテクチャをサポートする可能性があります。
総じて、LimaはLinux VMをコンテナのように軽量にし、macOS開発者にとって理想的な選択肢となります。特にコンテナ化の時代において。
製品名:Lima
公式サイト:https://github.com/lima-vm/lima

