在主机 (MacOs BigSur) 和 podman VM 之间挂载卷

在我的公司,由于 docker 政策的最新变化,我们切换到 Podman。我使用 Windows 和 WSL2 的同事无缝切换。使用 MacOs BigSur v.11.6.2 的我面临以下问题:

$ podman machine init -v /Users:/mnt/Users
$ podman machine start

我收到以下错误

$ Starting machine "podman-machine-default"
$ INFO[0000] waiting for clients...                       
$ INFO[0000] new connection from  to /var/folders/4z/9v__6yld4d7fzmbxm8trl1sh0000gn/T/podman/qemu_podman-machine-default.sock 
$ Waiting for VM ...
$ qemu-system-x86_64: -virtfs local,path=/Users/Dimitrii_Meritsidi/Documents/spbh_exus/git/cdp_airflow_local_environment,mount_tag=vol0,security_model=mapped-xattr: There is no option group 'virtfs'
$ qemu-system-x86_64: -virtfs local,path=/Users/Dimitrii_Meritsidi/Documents/spbh_exus/git/cdp_airflow_local_environment,mount_tag=vol0,security_model=mapped-xattr: virtfs support is disabled

我读过 MacOs Bigsur 不支持 virtfs。这里有哪些可能的解决方案?我找到了使用 Vmware Fusion 的可能解决方法,但它也是付费订阅的。我需要使用这种安装的原因是因为我们使用带有卷的 docker-compose.yml 来启动本地气流。

stack overflow Mounting volumes between host (MacOs BigSur) and podman VM
原文答案

答案:

作者头像

尝试

podman machine init --volume /Users --volume /Volumes
作者头像

要允许在 MacOS 上挂载卷,需要创建 podman 机器以访问您要尝试挂载子文件夹的文件夹,以便它可以访问它。

可能大多数 MacOS 用户只想从他们的主目录中挂载,所以应该像下面这样创建机器:

podman machine init --now --cpus=4 --memory=4096 -v $HOME:$HOME

我在 https://github.com/ansible/vscode-ansible/wiki/macos 上为 macos 上的 podman 编写了一个指南,您可能会发现它很有用。