[minikube 文档中文翻译] 手册 - 主机访问

手册 - 主机访问

如何从 Pod 访问主机资源

先决条件

在您的主机上运行的服务必须绑定到所有 IP (0.0.0.0) 和接口,或者绑定到您的 VM 桥接的 IP 和接口。如果服务仅绑定到 localhost (127.0.0.1),这将不起作用。

host.minikube.internal

为了更容易访问您的主机,minikube v1.10 将主机名条目 host.minikube.internal 添加到 /etc/hostshost.minikube.internal 解析到的 IP 因驱动程序而异,并且可能因集群而异。

验证连接性

您可以使用 minikube ssh 来确认连接:

1
2
3
4
5
6
7
8
9
10
11
$ 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>

1
2
$ nc -vz host.minikube.internal 8000
Connection to host.minikube.internal 8000 port [tcp/*] succeeded!

以下是解释不同消息的方法:

  • Connection succeeded:您已连接!

  • Connection refused:服务没有监听端口,至少没有跨所有接口

笔记
当使用旧版本的 minikube 时,您可能需要在 minikube 映像中手动安装 ping 和 netcat 等工具:

1
sudo apt install iputils-ping netcat-openbsd

原文链接

Host access | minikube - https://minikube.sigs.k8s.io/docs/handbook/host-access/