My end goal is to be able to access exposed Kubernetes services running on on my host from another host.
I am doing development in minikube and have tried using an Ingress controller. I am able to get this working on the device itself, as per the directions here Setting up ingress on minikube. However, I want to be able to access my exposed services from a different computer, as in
curl http://host.ip:8000
, where host.ip is the actual public IP address of the device, not that of the minikube VM or that of an internal network created on the device; and port 8000
is that of the exposed Kubernetes service.
This does not seem like such an odd edge case, so I am surprised I not been able to find any useful information out there on how ****EASILY**** do this.
Here is my local functioning ingress controller, for completeness's sake:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: nlp-adapt
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
backend:
serviceName: default-http-backend
servicePort: 8000
rules:
- host: myminikube.info
http:
paths:
- path: /
backend:
serviceName: echoserver
servicePort: 8080
- host: test.nlp
http:
paths:
- path: /nlptab
backend:
serviceName: nlptab
servicePort: 8000