挂载文件系统

如何将主机目录挂载到虚拟机中

9P 挂载

9P 挂载很灵活,适用于所有虚拟机管理程序,但在与大型文件夹(>600 个文件)一起使用时会遇到性能和可靠性问题。请参阅**驱动器挂载**作为替代方案。

要使用 `mount` 子命令将主机目录挂载到访客机中

minikube mount <source directory>:<target directory>

例如,这将把您的主目录挂载到 minikube 虚拟机中,显示为 /host

minikube mount $HOME:/host

然后,此目录可以从 Kubernetes 清单中引用,例如

{
  "apiVersion": "v1",
  "kind": "Pod",
  "metadata": {
    "name": "ubuntu"
  },
  "spec": {
    "containers": [
      {
        "name": "ubuntu",
        "image": "ubuntu:18.04",
        "args": ["bash"],
        "stdin": true,
        "stdinOnce": true,
        "tty": true,
        "workingDir": "/host",
        "volumeMounts": [
          {
            "mountPath": "/host",
            "name": "host-mount"
          }
        ]
      }
    ],
    "volumes": [
      {
        "name": "host-mount",
        "hostPath": {
          "path": "/host"
        }
      }
    ]
  }
}

驱动器挂载

某些虚拟机管理程序具有内置的主机文件夹共享功能。驱动器挂载可靠且性能良好,但在不同的操作系统或虚拟机管理程序上,其路径不可预测。

驱动程序 操作系统 主机文件夹 虚拟机
VirtualBox Linux /home /hosthome
VirtualBox macOS /Users /Users
VirtualBox Windows C://Users /c/Users
VMware Fusion macOS /Users /mnt/hgfs/Users
KVM Linux 不支持
HyperKit macOS 支持

可以通过向 `minikube start` 传递 `--disable-driver-mounts` 来禁用这些挂载。

HyperKit 挂载可以使用以下标志: `--nfs-share=[]`:通过 NFS 挂载与访客机共享的本地文件夹 `--nfs-shares-root='/nfsshares'`:NFS 共享的根目录,默认为 /nfsshares

文件同步

请参阅文件同步


上次修改于 2022 年 2 月 1 日:手册中添加了网络策略页面 (51092e0e3)