如何在minikube VM中安装Host文件夹

时间:2017-06-01 15:06:46

标签: docker kubernetes minikube

我有一个用例,我需要在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

在另一个窗口中,我查看了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 ..

是否需要另一个步骤才能使该目录中的文件可访问?

FYI - 用例是一个容器进程,用于创建主机进程正在收集的文件。因此我不想使用nfs或PersistentVolumes。主持人是Centos7。 minikube版本:v0.19.0。

2 个答案:

答案 0 :(得分:2)

问题是防火墙,在Ubuntu这对我有用:

sudo ufw allow in on virbr1
sudo ufw reload

但您需要通过ifconfig找出正确的界面名称。

在我的情况下,我做minikube ip以实现界面virbr1

我找到了解决方案,因为过去我遇到了与sudo ufw allow in on docker0解决的docker连接问题

答案 1 :(得分:0)

只是概括了Leo的出色解决方案:

ip r g $(minikube ip)|awk '{print $3}'|head -n1|xargs sudo ufw allow in on
sudo ufw reload

这将获取minikube ip,查找接口并将其添加到防火墙规则中。

希望对任何人都有帮助。谢谢狮子座。