AppleがMac版WSLを構築?「Container Machines」とは
Original · Apple Just Built WSL for the Mac (Container Machines)
Key Takeaway
「Container Machines」はAppleシリコンに最適化された軽量なLinux仮想環境を提供し、コンテナごとに専用のVMを割り当てることで高いセキュリティと性能を実現する。
Highlights
Appleがリリースした「Container Machines」は、macOS上で動作する軽量かつ永続的なLinux環境を提供する。
「Container Machines」は、Dockerの代替プロジェクト「Apple Containers」を基盤とし、Appleシリコンに最適化されている。
コンテナ単位で独自の軽量VMが割り当てられるため、共有VM方式と比較してセキュリティとデータ分離性能が高い。
ホームディレクトリがデフォルトで読み書き可能にマウントされるため、Mac上のファイルへのアクセスが容易である。
メモリ消費に関して、OrbStackは未使用メモリを動的に解放するが、Container Machinesは起動時に確保したメモリを保持し続ける。
ベンチマークにおいて、Apple ContainersはシングルスレッドCPU性能で高い数値を記録し、メモリのスループットでも他のツールを上回る。
Timeline
Container Machinesの概要とセットアップ
WWDCで発表されたApple Intelligenceの裏でリリースされた、Windows Subsystem for LinuxのApple版とも呼べる機能である。macOS 26以降で動作し、Dockerファイルからコマンドライン経由で容易にビルド・作成ができる。作成された環境は永続的なVMとして管理され、個別のマシンとして扱われる。
- Container MachinesはmacOS上でLinux環境を容易に構築・管理できるツールである。
- OCI互換のDockerイメージを使用し、システム初期化プログラムを含めることで仮想マシンとして動作する。
- デフォルト設定ではシステムメモリの半分を確保し、IPアドレスやCPU数などのリソース設定が可能である。
開発ワークフローへの統合と機能
MacのフォルダをLinux内にマウントすることで、macOS側のツールでソースコードを修正し、Linux環境で即座に動作確認を行うといった効率的な開発が可能となる。また、複数のディストリビューションを並行して動かせるため、クロスプラットフォーム開発にも適している。
- MacとLinux間でファイルシステムが共有されており、ファイル転送の手間なく開発・テストが可能である。
- macOS上のユーザー情報がLinux環境へ自動的に引き継がれ、ホームディレクトリへのアクセスが提供される。
- SystemDの実行に対応しており、デプロイ先サーバー環境とほぼ同様の構成を再現できる。
技術的アプローチとベンチマーク比較
個別のVMを割り当てる設計により、コンテナ間での強固な分離を実現している。RepoFlowによる比較では、Docker Desktopと比較してリソース使用効率やスループット面で優位性を見せた。ただし、小規模なコンテナの起動速度という点では、最適化された既存ツールに一歩譲る。
- Docker Desktopのような共有VM方式ではなく、独自の仮想化フレームワークで個別の軽量VMを作成する。
- Apple ContainersはシングルスレッドCPU性能で高いスコアを記録し、メモリのスループットにおいても競合をリードする。
- コンテナ起動時間は1秒未満だが、Docker DesktopやOrbStackの0.25秒以下と比べると改善の余地がある。
利用上の制約と注意点
動的メモリ管理が可能なOrbStackと比較すると、リソース管理面で不便が生じる可能性がある。また、GUIアプリの実行には向いておらず、セキュリティ面ではマウント設定を適切に制御する必要がある。現状、商用利用や洗練されたリソース管理を求める場合は、OrbStackなどの代替手段も選択肢として考慮される。
- 確保されたメモリを動的に解放する機能がなく、メモリ消費量の多い処理はマシン再起動まで影響が残る。
- GPUやUSBのパススルー機能は現在のところサポートされていない。
- ホームディレクトリのフルマウントはセキュリティ上の懸念があり、認証情報へのアクセスが可能な設定となっている。
Description
Apple Container Machines are a new feature that gives you lightweight, persistent Linux environments on your Mac, built on top of last year's Apple Container project and optimized for Apple Silicon. 🔗 Relevant Links GitHub: https://github.com/apple/container/blob/main/docs/container-machine.md Apple: https://developer.apple.com/videos/play/wwdc2026/389/ RepoFlow benchmarks: https://www.repoflow.io/blog/apple-containers-vs-docker-desktop-vs-orbstack ❤️ More about us Radically better observability stack: https://betterstack.com/ Written tutorials: https://betterstack.com/community/ Example projects: https://github.com/BetterStackHQ 📱 Socials Twitter: https://twitter.com/betterstackhq Instagram: https://www.instagram.com/betterstackhq/ TikTok: https://www.tiktok.com/@betterstack LinkedIn: https://www.linkedin.com/company/betterstack 📌 Chapters: 0:00 - Intro (WSL for Mac) 0:29 - Creating a Container Machine 1:48 - Inside Linux 2:09 - Home Directory Sharing 2:42 - Develop on Mac, Test on Linux 3:56 - Multiple Distros & systemd 4:28 - Design Principles 4:48 - How It's Built 5:40 - Benchmarks vs Docker & OrbStack 6:27 - The Catches 7:32 - Final Verdict
