Docker Kubernetes节点端口不';t从容器返回响应
我已经开发了一个容器化的Flask应用程序,我想用Kubernetes部署它。但是,我无法将容器的端口与服务正确连接 这是我的部署文件:Docker Kubernetes节点端口不';t从容器返回响应,docker,flask,kubernetes,Docker,Flask,Kubernetes,我已经开发了一个容器化的Flask应用程序,我想用Kubernetes部署它。但是,我无法将容器的端口与服务正确连接 这是我的部署文件: apiVersion: apps/v1beta1 kind: Deployment metadata: name: <my-app-name> spec: replicas: 1 template: metadata: labels: app: flaskapp spec: co
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: <my-app-name>
spec:
replicas: 1
template:
metadata:
labels:
app: flaskapp
spec:
containers:
- name: <container-name>
image: <container-image>
imagePullPolicy: IfNotPresent
ports:
- containerPort: 5000
name: http-port
---
apiVersion: v1
kind: Service
metadata:
name: <service-name>
spec:
selector:
app: flaskapp
ports:
- name: http
protocol: TCP
targetPort: 5000
port: 5000
nodePort: 30013
type: NodePort
当我运行kubectl get services
时,我得到以下信息:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S)
<service-name> NodePort 10.105.247.63 <none> 5000:30013/TCP
...
名称类型群集IP外部IP端口
节点端口10.105.247.63 5000:30013/TCP
...
但是,当我向浏览器提供以下URL:10.105.247.63:30013时,浏览器会继续加载,但不会从应用程序返回数据
有人知道问题出在哪里吗?服务似乎未连接到容器的端口。
30013
是节点上不在群集IP中的端口。要获得回复,您必须连接到:30013
。要获取节点列表,您可以:
kubectl get nodes -o=wide
您也可以通过
CLUSTER-IP
,但必须使用暴露端口5000
:10.105.247.63:5000
你好!谢谢你的回答!在获得节点列表后(因为我使用Minikube,所以只有一个节点),节点的IP不会显示!你知道我怎么能找到它吗?再次感谢您!这是你minikube虚拟机的IP。
kubectl get nodes -o=wide