minikube - 我在哪里可以找到部署在 minikube 中的应用程序的主机 IP 地址
问题描述
我正在 minikube 中部署一个 Spring Boot 应用程序,该应用程序连接到主机上运行的数据库。我在哪里可以找到应用程序可以用来返回主机的 IP 地址?对于 docker,我可以使用ifconfig
并从docker0
条目中获取 IP 地址。 ifconfig
显示另一个具有 IP 地址的设备172.18.0.1
。这就是我的应用程序返回主机的方式吗?
解决方案
我想我正确地理解了你,这就是你所要求的。
Minikube 在您的机器上作为 VM 启动。您需要知道 Minikube 以哪个 IP 开头。这可以使用minikube status
or来完成minikube ip
,输出可能如下所示:
$ minikube status
minikube: Running
cluster: Running
kubectl: Correctly Configured: pointing to minikube-vm at 192.168.99.1
这只会为您提供 Minikube 的 IP 地址,而不是您的应用程序。为了从 Minikube 外部连接到您的应用程序,您需要将其公开为Service。
a 的示例Service
可能如下所示:
apiVersion: v1
kind: Service
metadata:
name: webapp
spec:
type: NodePort
ports:
- nodePort: 31317
port: 8080
protocol: TCP
targetPort: 8080
selector:
app: webapp
你可以看到结果:
$ kubectl get services -o wide
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
postgres ClusterIP 10.0.0.140 <none> 5432/TCP 32m app=postgres
webapp NodePort 10.0.0.235 <none> 8080:31317/TCP 2s app=webapp
您将能够使用10.0.0.235:8080
从集群外部使用Minikube IP
和端口从集群内部连接到 webapp 31317
。
我还建议阅读Hello Minikube教程。
推荐阅读
- db2 - DB2 负载(远程客户端 | db2 服务器中的文件)
- mysql - Mysql sum group by query in laravel eloquent
- php - LinkedIn API V2 - 如何将照片上传为二进制文件
- django - Django - order_by() 字符和数字
- java - tearDown 没有被初始化
- python - Matplotlib (hist2D) 中的二维直方图如何工作?
- julia - 绘制分段数据,x 轴范围
- sql - 在 SQL 中通过最小订单输出更改订单
- java - spring cassandra data 2.1.4版分页
- function - Powershell Cmdlet.ShouldProcess 方法默认答案