В прошлой статье мы установили сервис echoserver и открыли порт 31933 для общения приложения с внешним миром. Но как видно использовать IP адрес и порт неудобно конечным пользователям. Давайте сделаем так, чтобы наше приложение отвечало нам если мы пишем http://example.test в браузере вместо IP адреса и порта. Для этого нам потребуется запустить Minikube, прописать IP адрес Minikube и доменное имя example.test в /etc/hosts:
192.168.99.103 example.test
Теперь создадим файл ingress.yml:
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: myservice spec: rules: - host: example.test http: paths: - path: / backend: serviceName: hello-minikube servicePort: 8080
Применим изменения:
kubectl apply -f ingress.yml
Проверяем:
curl example.test CLIENT VALUES: client_address=172.17.0.7 command=GET real path=/ query=nil request_version=1.1 request_uri=http://example.test:8080/ SERVER VALUES: server_version=nginx: 1.10.0 - lua: 10001 HEADERS RECEIVED: accept=*/* connection=close host=example.test user-agent=curl/7.52.1 x-forwarded-for=192.168.99.1 x-forwarded-host=example.test x-forwarded-port=80 x-forwarded-proto=http x-original-uri=/ x-real-ip=192.168.99.1 x-scheme=http BODY: -no body in request-%