[英]Localhost kubernetes ingress not exposing services to local machine
我在 localhost 中运行 kuberenetes,pod 正在运行,并且可以在端口转发时访问服务:
kubectl port-forward svc/my-service 8080:8080
我可以在本地主机中获取/发布等服务。
我正在尝试将它与入口一起使用来访问它,这是 yml 文件:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: my-ingress
spec:
ingressClassName: nginx
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: my-service
port:
number: 8080
我还安装了入口 controller。 但它没有按预期工作。 这有什么问题吗?
编辑:我试图与入口连接的服务:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-service
labels:
app: my-service
spec:
replicas: 1
selector:
matchLabels:
app: my-service
template:
metadata:
labels: my-service
app: my-service
spec:
containers:
- image: test/my-service:0.0.1-SNAPSHOT
name: my-service
ports:
- containerPort:8080
... other spring boot override properties
---
apiVersion: v1
kind: Service
metadata:
name: my-service
labels:
app: my-service
spec:
type: ClusterIP
selector:
app: my-service
ports:
- name: 8080-8080
port: 8080
protocol: TCP
targetPort: 8080
服务虽然可以自己工作
编辑:
当我使用https而不是http时它起作用了
入口资源是否与服务在同一个命名空间中? 可以分享一下服务清单吗? 此外,nginx ingress-controller 的日志显示什么以及在浏览器中点击端点时会遇到什么样的错误?
顺便说一句,Ingress 的 YAML 文件对我来说看起来不错。
我是愚蠢的。 当我使用https而不是http时它起作用了
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.