主机访问
如何从 Pod 访问主机资源
先决条件
运行在主机上的服务必须绑定到所有 IP (0.0.0.0) 和接口,或者绑定到您的虚拟机桥接所使用的 IP 和接口。如果服务只绑定到 localhost (127.0.0.1),则无法工作。
host.minikube.internal
为了方便访问您的主机,minikube v1.10 在 /etc/hosts
中添加了一个主机名条目 host.minikube.internal
。host.minikube.internal
解析到的 IP 在不同驱动之间可能不同,在不同集群之间也可能不同。
验证连接
您可以使用 minikube ssh
来确认连接
_ _
_ _ ( ) ( )
___ ___ (_) ___ (_)| |/') _ _ | |_ __
/' _ ` _ `\| |/' _ `\| || , < ( ) ( )| '_`\ /'__`\
| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )( ___/
(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____)
$ ping host.minikube.internal
PING host.minikube.internal (192.168.64.1): 56 data bytes
64 bytes from 192.168.64.1: seq=0 ttl=64 time=0.225 ms
要测试与主机上正在侦听的特定 TCP 服务的连接,请使用 nc -vz host.minikube.internal <port>
$ nc -vz host.minikube.internal 8000
Connection to host.minikube.internal 8000 port [tcp/*] succeeded!
以下是不同消息的解释方式
Connection succeeded
:您已连接成功!Connection refused
:服务未在该端口上侦听,至少不是在所有接口上侦听
注意
当使用旧版本的 minikube 时,您可能需要在 minikube 镜像中手动安装 ping
和 netcat
等工具
sudo apt install iputils-ping netcat-openbsd