
macOSを使う開発者の皆さん、こんな悩みを抱えていませんか?
- 「macOS環境を汚さずに、気軽にUbuntu環境を試したい」
- 「VirtualBoxは便利だけど、リソース消費が気になる…もっと軽量な選択肢はないか?」
- 「Ubuntuでしか動作しないツールをmacOSで使いたい」
もし一つでも当てはまるなら、ぜひこの記事を役に立ててください。
macOS開発者の多くが、開発環境やOS環境の分離するために仮想化技術を活用しています。しかし、仮想化ツールの設定が複雑だったり、リソースを多く消費したりと、課題ががあるのでないでしょうか。
そこで本記事から始まる連載では、macOS開発者の強力な味方となる「Multipass」を徹底的に解説します。
Multipassとは、Canonical社(Ubuntuの開発元)が提供する、macOS上で軽量なUbuntu仮想マシンを簡単に起動・管理できるツールです。
この連載は、Multipassを使いこなし、macOS開発環境をより快適で効率的なものにすることを狙っています。
対象読者
- macOSで開発を行っているエンジニア
- Ubuntu環境を手軽に構築したいと考えている方
- 仮想化技術やコンテナ技術に興味がある初級〜中級レベルのエンジニア
- VirtualBoxの代替となる軽量な開発環境を探している方
動作検証環境
この記事で紹介するcurlコマンドの動作は、以下の環境で検証しています。
- OS : macOS Tahoe Version 26.0
- ハードウェア : MacBook Air 2024 M3 24GB
- Multipass : Multipass version 1.16.1
目次
- なぜmacOS開発にMultipassが必要なのか?
- MultipassのmacOSへのインストール手順
- 最初のUbuntuインスタンスを起動してみよう
- Multipassのアップデート・アンインストール手順
- FAQ
- まとめ:次回の記事への展望
- 参考資料
- 免責事項
1. なぜmacOS開発者にMultipassが必要なのか?
macOSは優れた開発環境ですが、クラウド向けの開発時にはUbuntu環境が必要になることがあります。例えば、Ubuntuでしか動作しないソフトウェアのテスト、本番環境に近い環境での開発、あるいは単に新しい技術を試したい場合などです。
Multipassとは?その魅力とメリット
Multipassは、従来の仮想環境の設定やリソース消費などの課題を解決するために利用できます。一言で言えば、macOS上でUbuntu仮想マシンを「秒速」で起動できるツールです。
Multipassの最大の魅力は、手軽さと軽量性に尽きます!
- 圧倒的な手軽さ: コマンド一つでUbuntuインスタンスを起動でき、複雑な設定は不要。
- 軽量: 最小限のリソースで動作。Apple Silicon Macでは、ネイティブに近いパフォーマンスを発揮。
- Ubuntu公式: Canonical社が提供。、Ubuntuとの親和性が高く、安心して利用可能。
- 開発環境の分離: macOSをクリーンに、プロジェクトごとに独立した開発環境を構築可能。
従来の仮想化ツールとの比較(VirtualBox, Docker Desktopなど)
Multipassと他の仮想化ツールと比較してみます。メリットがより明確になりますね。
特徴 | Multipass | VirtualBox | Docker Desktop |
---|---|---|---|
目的 | 軽量なUbuntu VMの迅速な起動 | 汎用的な仮想マシンの作成・管理 | コンテナベースの開発環境 |
手軽さ | ★★★★★ (コマンド一つでVM起動) | ★★☆☆☆ (GUIでの設定、OSインストールが必要) | ★★★★☆ (Dockerイメージの利用は手軽) |
軽量性 | ★★★★☆ (最小限のリソース消費) | ★★★☆☆ (VMのOSリソース消費が大きい) | ★★★☆☆ (バックグラウンドプロセスがリソース消費) |
OSサポート | Ubuntu (LTS版が中心) | 多数のOSをサポート | コンテナイメージに依存 |
macOSとの親和性 | ★★★★★ (Apple Siliconに最適化) | ★★☆☆☆ (Intel Mac向け、Apple Siliconは限定的) | ★★★★☆ (Apple Silicon対応) |
ユースケース | Linux開発環境、テスト環境、CLIツール実行 | 異なるOS環境の再現、古いソフトウェア実行 | コンテナ化されたアプリケーション開発 |
Multipassは、特に「macOS上で手軽にUnintu開発環境を構築したい」というニーズに特化しており、その点で他のツールよりも優位性があります。
VirtualBoxがGUIであるのに対し、Multipassは軽量な仮想マシンを提供するため、CLIでの操作や、Docker自体を仮想環境内で動かすといった柔軟な使い方も可能です。
2. MultipassのmacOSへのインストール手順
Multipassのインストールは非常に簡単です。主に2つの方法があります。
方法1:公式サイトからのインストーラー利用
Multipassの公式サイトからインストーラーをダウンロードしてインストールします。
- 公式サイトへアクセス:
Multipass公式サイト にアクセスします。 - インストーラーのダウンロード:
「Download Multipass for macOS」 リンクをクリックし、multipass-X.Y.Z+mac-Darwin.pkg
ファイルをダウンロードします。ダウンロードサイズは、約125MB程度です。 - インストーラーの実行:
ダウンロードしたmultipass-X.Y.Z+mac-Darwin.pkg
ファイルを開き、画面の指示に従ってインストールを進めます。 - インストール確認:
ターミナルを開き、multipass version
コマンドでバージョンを確認します。
multipass version
バージョン情報が表示されれば、インストールは成功です。
コマンド実行例(バージョン情報の確認):
user-name@your-mac ~ % multipass version
multipass 1.16.1+mac
multipassd 1.16.1+mac
方法2:Homebrewを使った簡単なインストール
macOSユーザーであれば、Homebrewを使ったインストールも可能です。
- Homebrewのインストール:
まだHomebrewをインストールしていない場合は、以下のコマンドでインストールします。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Multipassのインストール:
Homebrewがインストールされていれば、以下のコマンドでMultipassをインストールできます。インストール中にmacOSのパスワード入力が求められます。
brew install --cask multipass
コマンド実行例(homebrewを使ったインストール):
user-name@your-mac my_uv_project % brew install --cask multipass
==> **Downloading https://raw.githubusercontent.com/Homebrew/homebrew-cask/80f95de379d69edb696dd29106**
############################################################################################ 100.0%
==> **Downloading https://github.com/canonical/multipass/releases/download/v1.16.1/multipass-1.16.1+m**
==> **Downloading from https://release-assets.githubusercontent.com/github-production-release-asset/1**
############################################################################################ 100.0%
==> **Installing Cask** **multipass**
==> **Running installer for multipass with `sudo` (which may request your password)...**
Password:
installer: Package name is multipass
installer: Installing at base path /
installer: The install was successful.
🍺 multipass was successfully installed!
==> **No outdated dependents to upgrade!**
NOTE: --cask
オプションは、GUIアプリケーションやバイナリパッケージをインストールする際に使用します。Multipassはバックグラウンドで動作するデーモンとCLIツールを提供するため、このオプションが必要です。
- インストール確認:
インストールが完了したら、以下のコマンドでバージョンを確認してみましょう。
multipass version
バージョン情報が表示されれば、インストールは成功です。
コマンド実行例(バージョン情報の確認):
user-name@your-mac ~ % multipass version
multipass 1.16.1+mac
multipassd 1.16.1+mac
3. 最初のUbuntuインスタンスを起動してみよう
Multipassのインストールが完了したら、いよいよ最初のUbuntuインスタンスを起動してみましょう。
multipass launch
コマンドの基本
multipass launch
コマンドで、新しいUbuntu仮想マシンを起動することができます。
最もシンプルな使い方は以下の通りです。
mulipass launch
このコマンドを実行すると、最新のLTS版Ubuntuがデフォルト設定で起動します。インスタンスには自動的にランダムな名前が割り当てられます。
特定のUbuntuバージョンを指定したい場合は、--name
オプションでインスタンス名を、イメージ名を指定します。例えば、Ubuntu 22.04 LTS を起動したい場合は以下のようになります。
mulipass launch 22.04
このコマンドを実行すると、指定したあLTS版Ubuntuがデフォルト設定で起動します。インスタンスには自動的にランダムな名前が割り当てられます。
コマンド実行後、以下のような出力が表示され、新しいUbuntuインスタンスが正常に起動したことを示します。
コマンド実行例(名前の指定なしで、インスタンスを起動した場合):
Launched: <インスタンス名>
ここで表示される <インスタンス名>
は、Multipassが自動的に割り当てるランダムな名前です(例: agreeable-llama
)。
起動する仮想マシンにインスタンス名をつけたい場合は、--name
オプションでインスタンス名を指定します。例えば、Ubuntu 24.04 LTS を起動し、「my-ubuntu-vm」という名前を付けたい場合は以下のようになります。
multipass launch 24.04 -n my-ubuntu-vm
期待される結果:
指定した名前でインスタンスが起動します。
コマンド実行例(名前の指定して、インスタンスを起動した場合):
Launched: my-ubuntu-vm
[TIP]: multipass launch --help
を実行すると、利用可能なオプション(CPU数、メモリ量、ディスクサイズ、cloud-initスクリプトの指定など)を確認できます。
multipass find
で利用可能なイメージを確認する
multipass launch
コマンドでVMを起動する前に、どのようなUbuntuイメージや特定の用途に特化した環境(Blueprint)が利用可能かを確認できます。Blueprintは非推奨となっており、今後利用できなくなる可能性があるため、注意が必要です。
mulipass find
コマンド実行例(利用可能イメージの確認):
Image Aliases Version Description
22.04 jammy 20250725 Ubuntu 22.04 LTS
24.04 noble,lts 20250805 Ubuntu 24.04 LTS
25.04 plucky 20250924 Ubuntu 25.04
daily:25.10 questing,devel 20250921 Ubuntu 25.10
Blueprint (deprecated) Aliases Version Description
anbox-cloud-appliance latest Anbox Cloud Appliance
charm-dev latest A development and testing environment for charmers
docker 0.4 A Docker environment with Portainer and related tools
jellyfin latest Jellyfin is a Free Software Media System that puts in control of managing and streaming your media.
minikube latest minikube is local Kubernetes
ros2-humble 0.1 A development and testing environment for ROS 2 Humble.
ros2-jazzy 0.1 A development and testing environment for ROS 2 Jazzy.
出力の解説:
Multipassで利用可能な仮想マシンイメージの一覧を表示しています。
- Image セクション: 標準的なUbuntuのバージョンイメージがリストされます。
- Image: Ubuntuのバージョン番号(例:
22.04
,24.04
)。daily:
が付いているものは開発中の最新版を示します。 - Aliases: そのイメージに付けられた別名(例:
jammy
,noble
,lts
)。これらのエイリアスを使ってmultipass launch
でイメージを指定できます。 - Version: イメージがビルドされた日付。
- Description: イメージの簡単な説明。
- Image: Ubuntuのバージョン番号(例:
- Blueprint (deprecated) セクション: 特定のソフトウェアや環境があらかじめ設定されたイメージがリストされますが、現在は非推奨 (deprecated) となっています。これは、将来的にこの形式の提供が終了する可能性があることを意味します。
- Blueprint (deprecated): 特定の用途に特化したイメージの名前。
- Aliases: Blueprintの別名。
- Version: Blueprintのバージョン。
- Description: Blueprintの簡単な説明。
インスタンスの確認と接続 (multipass list
, multipass shell
)
インスタンスが起動したら、その状態を確認し、接続してみましょう。
- インスタンスの確認:
現在起動している、または停止しているMultipassインスタンスの一覧を確認するには、multipass list
コマンドを使用します。
multipass list
コマンド実行例(インスタンスの確認):
Name State IPv4 Image
my-ubuntu-vm Running 192.168.64.2 Ubuntu 24.04 LTS
Name
はインスタンス名、State
は状態(Running, Stoppedなど)、IPv4
はIPアドレス、Image
は使用しているUbuntuのバージョンを示します。
- インスタンスへの接続:
起動したインスタンスにSSHで接続するには、multipass shell
コマンドを使用します。インスタンス名を指定します。
multipass shell my-ubuntu-vm
これで、あなたのMacのターミナルから、起動したUbuntu仮想マシンにログインできました。通常のLinuxコマンドを実行できます。
ubuntu@my-ubuntu-vm:~$ ls -la
ubuntu@my-ubuntu-vm:~$ sudo apt update
インスタンスからログアウトするには、exit
コマンドを入力します。
ubuntu@my-ubuntu-vm:~$ exit
logout
4. Multipassのアップデート・アンインストール手順
Multipassのアップデート
インストール方法に応じて、以下のいずれかの方法でアップデートできます。
方法1:公式サイトのインストーラーでインストールした場合
公式サイトからインストーラーをダウンロードしてインストールした場合は、最新版のインストーラーを再度ダウンロードし、実行することでアップデートできます。
- Multipass公式サイトへアクセス:
Multipass公式サイト にアクセスします。 - 最新版インストーラーのダウンロード:
「Download Multipass for macOS」リンクをクリックし、最新版のmultipass-X.Y.Z+mac-Darwin.pkg
ファイルをダウンロードします。(X.Y.Zはバージョン番号) - インストーラーの実行:
ダウンロードしたファイルを再度実行し、画面の指示に従ってインストールを進めます。既存のインストールが上書きされ、最新版にアップデートされます。 - アップデート確認:
ターミナルでmultipass version
コマンドを実行し、バージョンが更新されていることを確認します。
Homebrewでインストールした場合
HomebrewでMultipassをインストールした場合は、以下のコマンドで簡単にアップデートできます。
brew upgrade multipass
Multipassのアンインストール
Multipassが不要になった場合は、以下の手順でアンインストールできます。
公式サイトのインストーラーでインストールした場合
公式サイトからインストーラーをダウンロードしてインストールした場合は、以下の手順で手動でアンインストールします。
- 実行中のインスタンスの停止と削除(オプション):
必要なデータをバックアップしてから、すべてのMultipassインスタンスを停止し、削除します。
mulipass stop --all
mulipass delete --all
mulipass purge
- 方法1:Multipassアプリケーションの削除:
アプリケーション
フォルダからMultipass
アプリケーションをゴミ箱にドラッグして削除します。 - 方法2:アンインストールスクリプトの実行:
以下のコマンドを実行してMultipassに関連するファイルを削除します。
sudo sh "/Library/Application Support/com.canonical.multipass/uninstall.sh"
- アンインストール確認:
ターミナルでmultipass version
コマンドを実行し、「command not found」のようなエラーが表示されれば、アンインストールは成功です。
Homebrewでインストールした場合
HomebrewでMultipassをインストールした場合は、以下のコマンドでアンインストールできます。
brew uninstall --cask multipass
このコマンドは、Multipassアプリケーションと関連ファイルを削除します。
5. FAQ
Q1: MultipassはApple Silicon Macでも動作しますか?
はい、MultipassはApple Silicon Macに最適化されており、非常に高速に動作します。内部的にはmacOSのVirtualization.frameworkを利用しているため、高いパフォーマンスを発揮します。
Q2: 起動したインスタンスのIPアドレスが毎回変わるのですが、固定できますか?
Multipassのデフォルト設定では、インスタンスのIPアドレスはDHCPによって割り当てられるため、再起動などで変わる可能性があります。IPアドレスを固定する直接的なオプションは提供されていませんが、cloud-init
を利用して起動時にネットワーク設定を行う、あるいはホストOSの /etc/hosts
ファイルにエントリを追加して名前解決で対応するなどの方法が考えられます。
Q3: 複数のインスタンスを同時に起動できますか?
はい、可能です。Macのリソースが許す限り、複数のMultipassインスタンスを同時に起動し、それぞれ独立した環境として利用できます。例えば、開発用、テスト用、特定のツール試用用など、用途に応じてインスタンスを使い分けることができます。
6. まとめ:次回の記事への展望
この記事では、macOS開発者にとってMultipassの魅力とメリットの解説、実際にmacOSへのインストールから最初のUbuntuインスタンスの起動、そして接続までを体験しました。
次回の記事では、今回起動したMultipassインスタンスをさらに深く使いこなすための「インスタンス管理とファイル共有の極意」について解説します。
インスタンスの起動・停止・削除といったライフサイクル管理から、macOSとUbuntuインスタンス間でファイルを効率的に共有する方法まで、実践的な内容をお届けします。
Multipassを使いこなして、あなたのmacOS開発環境を次のレベルへ!全6回の連載を購読して、最新情報を手に入れよう!
この記事が役に立ったら、ぜひチームに共有したり、X(旧Twitter)で感想をポストしてください!
7. 参考資料
8. 免責事項
本記事の内容は、執筆時点での情報に基づいています。ソフトウェアのバージョンアップなどにより、手順や挙動が異なる場合があります。本記事の内容を参考に作業を行う際は、ご自身の責任において実施してください。