Mac上M1/2...架构上虚拟化平台

1.安装 Parallels Desktop(推荐)

1
brew install --cask parallels

然后安装 Vagrant 的 Parallels 插件:

1
vagrant plugin install vagrant-parallels

再修改 Vagrantfile

1
2
3
4
Vagrant.configure("2") do |config|
config.vm.box = "parallels/ubuntu-22.04-arm64"
config.vm.provider "parallels"
end

使用 ARM 版本 box,例如:

1
2
vagrant box add parallels/ubuntu-22.04-arm64
vagrant up --provider=parallels

2.使用 UTM(基于 QEMU,免费)

UTM 支持 ARM 原生虚拟化。
安装:

1
brew install --cask utm

目前 Vagrant 也有实验性的 QEMU provider(社区支持),不过相对麻烦。
如果只是想跑 Linux 服务环境,建议直接用 UTM + cloud-init 镜像Lima


3.Lima(Apple 官方推荐的轻量虚拟化)

Lima 是在 macOS 上原生运行 Linux 虚拟机的轻量方案(Docker Desktop 其实底层也是基于它)。

安装:

1
brew install lima

启动一个 Ubuntu VM:

1
2
limactl start --name=ubuntu-lts template://ubuntu-lts
limactl shell ubuntu-lts

适合开发、运维场景,比 VirtualBox 更轻量、兼容 ARM。


4.用 Docker(最实用)

如果你只是为了跑服务(例如 web/php/mysql/nginx 环境),那完全没必要用 Vagrant。
在 M1 上 Docker Desktop 已经非常成熟,并且支持 ARM/AMD 混合镜像。

安装:

1
brew install --cask docker

然后直接使用 docker-compose.yml 启动服务即可。