如何在 minikube VM 中挂载主机文件夹
How to mount a Host folder in minikube VM
我有一个用例,我需要 kubernetes 下的 Docker 容器来访问 hostPath。我正在使用 minikube,容器能够访问 minikube VirtualBox VM 中的文件夹。但我不知道如何让它访问主机上的文件夹。
我在主机上执行这些命令以创建 /opt/foo 以便在 VM 中共享:
$ sudo touch /opt/foo/FOO
$ ls /opt/foo
FOO
$ minikube mount -v 5 /opt/foo:/opt/foo
Mounting /opt/foo into /opt/foo on the minikubeVM
This daemon process needs to stay alive for the mount to still be accessible...
ufs starting
在另一个 window 中,我查看了 minikube VM
$ minikube ssh -- sudo ls -la /opt/foo
total 0
drwxrwxr-x 2 root root 0 Jun 1 14:44 .
drwxr-xr-x 5 root root 0 Jun 1 14:44 ..
是否需要其他步骤才能使该目录中的文件可访问?
仅供参考 - 用例是一个容器进程创建主机进程正在收集的文件。因此我不想使用 nfs 或 PersistentVolumes。主机是Centos7。 minikube 版本:v0.19.0.
问题是防火墙,在 Ubuntu 这对我有用:
sudo ufw allow in on virbr1
sudo ufw reload
但是你需要通过ifconfig
找出正确的接口名称。
在我的例子中,我做了 minikube ip
来实现接口 virbr1
我找到了解决方案,因为在过去我遇到了与 docker 的连接问题,这些问题已通过 sudo ufw allow in on docker0
解决
只是为了概括 Leo 的出色解决方案:
ip r g $(minikube ip)|awk '{print }'|head -n1|xargs sudo ufw allow in on
sudo ufw reload
这会获取 minikube ip,查找接口并将其添加到防火墙规则中。
希望对大家有所帮助。感谢 Leo。
我有一个用例,我需要 kubernetes 下的 Docker 容器来访问 hostPath。我正在使用 minikube,容器能够访问 minikube VirtualBox VM 中的文件夹。但我不知道如何让它访问主机上的文件夹。
我在主机上执行这些命令以创建 /opt/foo 以便在 VM 中共享:
$ sudo touch /opt/foo/FOO
$ ls /opt/foo
FOO
$ minikube mount -v 5 /opt/foo:/opt/foo
Mounting /opt/foo into /opt/foo on the minikubeVM
This daemon process needs to stay alive for the mount to still be accessible...
ufs starting
在另一个 window 中,我查看了 minikube VM
$ minikube ssh -- sudo ls -la /opt/foo
total 0
drwxrwxr-x 2 root root 0 Jun 1 14:44 .
drwxr-xr-x 5 root root 0 Jun 1 14:44 ..
是否需要其他步骤才能使该目录中的文件可访问?
仅供参考 - 用例是一个容器进程创建主机进程正在收集的文件。因此我不想使用 nfs 或 PersistentVolumes。主机是Centos7。 minikube 版本:v0.19.0.
问题是防火墙,在 Ubuntu 这对我有用:
sudo ufw allow in on virbr1
sudo ufw reload
但是你需要通过ifconfig
找出正确的接口名称。
在我的例子中,我做了 minikube ip
来实现接口 virbr1
我找到了解决方案,因为在过去我遇到了与 docker 的连接问题,这些问题已通过 sudo ufw allow in on docker0
只是为了概括 Leo 的出色解决方案:
ip r g $(minikube ip)|awk '{print }'|head -n1|xargs sudo ufw allow in on
sudo ufw reload
这会获取 minikube ip,查找接口并将其添加到防火墙规则中。
希望对大家有所帮助。感谢 Leo。