kubernetes Minikube:无法从外部访问节点端口服务 [英] kubernetes Minikube : Node port service not accessible from outside
问题描述
我正在尝试在 minikube (Windows-10) 上部署简单的 Spring Boot REST 服务.下面是我的配置
Docker 文件
FROM openjdk:8-jdk-alpine入口点 ["/usr/bin/java", "-jar", "/usr/share/myservice/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar"]添加目标/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar/usr/share/myservice/libARG JAR_FILE添加目标/${JAR_FILE}/usr/share/myservice/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar曝光 8080
docker 镜像运行良好,我可以运行该应用程序.
docker run -p 8080:8080 minikube-spring-boot-demo:0.0.1-SNAPSHO
部署
apiVersion: apps/v1种类:部署元数据:名称:minikube-spring-boot-demo规格:选择器:匹配标签:应用程序:minikube-spring-boot-demo层:后端复制品:3模板:元数据:标签:应用程序:minikube-spring-boot-demo层:后端规格:容器:- 名称:演示后端图像:nirajsonawane/minikube-spring-boot-demo:0.0.1-SNAPSHOTimagePullPolicy:始终端口:- 容器端口:8080
服务
apiVersion: v1种类:服务元数据:名称:minikube-spring-boot-demo-service规格:选择器:应用程序:minikube-spring-boot-demo层:后端端口:- 端口:8080目标端口:8080节点端口:30008类型:节点端口
kubectl 获取所有状态
kubectl 集群信息
minikube 日志
服务详情
我无法使用 service-ip:Nodeport/Uri
访问其余端点
minikube
正在虚拟机中运行.机器外的localhost
或127.0.0.1
都无法访问服务.
尝试运行 minikube service minikube-spring-boot-demo-service
.它将显示服务详细信息并在浏览器中打开服务.
I am trying to deploy simple spring boot REST service on minikube (Windows-10). Below are my configuration
Docker file
FROM openjdk:8-jdk-alpine
ENTRYPOINT ["/usr/bin/java", "-jar", "/usr/share/myservice/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar"]
ADD target/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar /usr/share/myservice/lib
ARG JAR_FILE
ADD target/${JAR_FILE} /usr/share/myservice/minikube-spring-boot-demo-0.0.1-SNAPSHOT.jar
EXPOSE 8080
docker image is running fine and i am able to run the app.
docker run -p 8080:8080 minikube-spring-boot-demo:0.0.1-SNAPSHO
Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: minikube-spring-boot-demo
spec:
selector:
matchLabels:
app: minikube-spring-boot-demo
tier: backend
replicas: 3
template:
metadata:
labels:
app: minikube-spring-boot-demo
tier: backend
spec:
containers:
- name: demo-backend
image: nirajsonawane/minikube-spring-boot-demo:0.0.1-SNAPSHOT
imagePullPolicy: Always
ports:
- containerPort: 8080
Service
apiVersion: v1
kind: Service
metadata:
name: minikube-spring-boot-demo-service
spec:
selector:
app: minikube-spring-boot-demo
tier: backend
ports:
- port: 8080
targetPort: 8080
nodePort: 30008
type: NodePort
kubectl get all status
kubectl cluster-info
minikube logs
Service Details
i am not able to access the rest endpoint using service-ip:Nodeport/Uri
http://127.0.0.1:30008/hello
Anything i am missing here? any inputs will be useful.
output of netstat -a
minikube
is running in a virtual machine. Services can't be accessed through either localhost
or 127.0.0.1
out of the machine.
Try to run minikube service minikube-spring-boot-demo-service
. It will show service details and open the service in the browser.
这篇关于kubernetes Minikube:无法从外部访问节点端口服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!