Multipassは、Linux、Windows、MacOSの軽量VMマネージャーです。 1つのコマンドで新鮮なUbuntu環境をスピンアップしたい開発者向けに設計されています。 LinuxでKVM、WindowsでHyper-V、MacOSのQEMUを使用して、最小限のオーバーヘッドで仮想マシンを実行します。また、WindowsおよびMacOでVirtualBoxを使用することもできます。 MultipassはUbuntu画像をフェッチし、最新の状態に保ちます。
Cloud-Initのメタデータをサポートしているため、ラップトップまたはワークステーションで小さなクラウドの展開をシミュレートできます。
| サービス | 状態 |
|---|---|
| CI | ![]() |
| スナップ | |
| コードコフ |
Linuxでは、マルチパスはスナップとして利用できます。
sudo snap install multipass
MacOSで、Githubからインストーラーをダウンロードします。
または、Homebrewを使用できます。この方法は、マルチパスチームによってはなく、コミュニティによって維持されているため、公式にサポートされていないことに注意してください。マルチパスは樽として利用できます:
brew install --cask multipass
インストール中にSUDO操作のためにパスワードを入力する必要がある場合があることに注意してください。また、MacOSでマルチパスインスタンスを正常に起動するには、ファイアウォールを無効にする必要があります。
Windowsで、GitHubからインストーラーをダウンロードします。
詳細については、マルチパスのインストール方法を参照してください。
マルチパスを始めるためのいくつかのポインターを以下に示します。より包括的な学習エクスペリエンスについては、マルチパスチュートリアルをご覧ください。
$ multipass find
Image Aliases Version Description
20.04 focal 20240731 Ubuntu 20.04 LTS
22.04 jammy 20240808 Ubuntu 22.04 LTS
24.04 noble,lts 20240806 Ubuntu 24.04 LTS
Blueprint 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 you in control of managing and streaming your media.
minikube latest minikube is local Kubernetes
ros-noetic 0.1 A development and testing environment for ROS Noetic.
ros2-humble 0.1 A development and testing environment for ROS 2 Humble.
$ multipass launch lts
Launched: dancing-chipmunk
$ multipass list
Name State IPv4 Image
dancing-chipmunk Running 192.168.64.8 Ubuntu 24.04 LTS
phlegmatic-bluebird Stopped -- Ubuntu 22.04 LTS
docker Running 192.168.64.11 Ubuntu 22.04 LTS
172.17.0.1
$ multipass info dancing-chipmunk
Name: dancing-chipmunk
State: Running
Snapshots: 0
IPv4: 192.168.64.8
Release: Ubuntu 24.04 LTS
Image hash: e2608bfdbc44 (Ubuntu 24.04 LTS)
CPU(s): 1
Load: 5.70 4.58 2.63
Disk usage: 3.3GiB out of 4.8GiB
Memory usage: 769.0MiB out of 953.0MiB
Mounts: --
$ multipass shell dancing-chipmunk
Welcome to Ubuntu 24.04 LTS (GNU/Linux 6.8.0-39-generic aarch64)
...
ログアウト(またはctrl-d)を忘れないでください。そうしないと、インセプションレベルが下がっていることに気付くかもしれません...;)
$ multipass exec dancing-chipmunk -- lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
$ multipass stop dancing-chipmunk
$ multipass delete dancing-chipmunk
インスタンスは削除されたまま表示されます。
$ multipass list
Name State IPv4 Image
dancing-chipmunk Deleted -- Ubuntu 24.04 LTS
phlegmatic-bluebird Stopped -- Ubuntu 22.04 LTS
docker Running 192.168.64.11 Ubuntu 22.04 LTS
172.17.0.1
あなたがそれを完全に取り除きたいなら:
$ multipass purge
multipass help
multipass help <command>
Linuxでマルチパスソースコードを構築するための一連の手順を次に示します。
これらの指示は、MacOSまたはWindowsシステムの建物パッケージをサポートしていないことに注意してください。
注:ARM、S390X、PPC64LE、またはRISCVの上に構築する場合、環境変数VCPKG_FORCE_SYSTEM_BINARIESを設定する必要があります。
export VCPKG_FORCE_SYSTEM_BINARIES=1
cd <multipass>
sudo apt install devscripts equivs
mk-build-deps -s sudo -i
cd <multipass>
git submodule update --init --recursive
mkdir build
cd build
cmake ../
make
「メインブランチのみをコピーする」オプションを使用して作成したフォークリポジトリに取り組んでいる場合、リポジトリには、CMAKE構成中にマルチパスバージョンを決定するために必要なgitタグが含まれないことに注意してください。この場合、 <multipass>ソースコードディレクトリのgit fetch --tags https://github.com/canonical/multipass.git実行することにより、上流からタグを手動で取得する必要があります。
まず、Multipassのランタイム依存関係をインストールします。 AMD64アーキテクチャでは、次のことでこれを行うことができます。
sudo apt update
sudo apt install libgl1 libpng16-16 libqt6core6 libqt6gui6
libqt6network6 libqt6widgets6 libxml2 libvirt0 dnsmasq-base
dnsmasq-utils qemu-system-x86 qemu-utils libslang2 iproute2
iptables iputils-ping libatm1 libxtables12 xterm
次に、マルチパスデーモンを実行します。
sudo <multipass>/build/bin/multipassd &
マルチパスクライアントがあなたの家で見つけることを期待しているデスクトップファイルをコピーします。
mkdir -p ~/.local/share/multipass/
cp <multipass>/data/multipass.gui.autostart.desktop ~/.local/share/multipass/
オプションで、bashで自動コンプリートを有効にします。
source <multipass>/completions/bash/multipass
これで、端末( <multipass>/build/bin/multipass launch --name foo )のmultipassコマンドを使用するか、コマンド<multipass>/build/bin/multipass.guiでGUIクライアントを起動できます。
マルチパスチームは、談話フォーラムでのリクエスト、問題、または議論や質問を通じて、プロジェクトへの貢献を高く評価しています。
プロジェクトに貢献する前に、次のガイドラインを注意深くお読みください。
貢献するときは、行動規範を遵守する必要があります。
このリポジトリのコードは、GNU General Public License v3.0に基づいてライセンスされています。詳細については、ライセンスを参照してください。
すべての貢献者は、Canonical Contributorライセンス契約(CLA)に署名する必要があります。 CLAがなければ、貢献は受け入れられません。
このプロジェクトの変更は、プルリクエストとして提案する必要があります。その後、提案された変更はレビューを通過し、承認されると、メインブランチに統合されます。
マルチパスドキュメント