<p>I have a simple demo Flask application that is deployed to kubernetes using minikube. I am able to access the app using the Services. But I am not able to connect using ingress.</p>
<p><strong>Services.yaml</strong></p>
<pre><code>apiVersion: v1
kind: Service
metadata:
  name: services-app-service
spec:
  selector:
    app: services-app
  type: ClusterIP             
  ports:
    - protocol: TCP
      port: 5000              # External connection
      targetPort: 5000        # Internal connection
</code></pre>
<hr />
<pre><code>D:Path&gt;kubectl get svc
NAME                   TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)    AGE
db                     ClusterIP   None          &lt;none&gt;        3306/TCP   120m
kubernetes             ClusterIP   10.20.30.1    &lt;none&gt;        443/TCP    3h38m
services-app-service   ClusterIP   10.20.30.40   &lt;none&gt;        5000/TCP   18m
</code></pre>
<p><strong>I am able to access the app using minikube.</strong></p>
<pre><code>D:Path&gt;minikube service services-app-service --url
* service default/services-app-service has no node port
* Starting tunnel for service services-app-service.
|-----------|----------------------|-------------|------------------------|
| NAMESPACE |         NAME         | TARGET PORT |          URL           |
|-----------|----------------------|-------------|------------------------|
| default   | services-app-service |             | http://127.0.0.1:50759 |
|-----------|----------------------|-------------|------------------------|
http://127.0.0.1:50759
! Because you are using a Docker driver on windows, the terminal needs to be open to run it.
</code></pre>
<p><strong>Ingress.yaml</strong></p>
<pre><code>apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: services-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
    - host: mydemo.info
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: services-app-service
                port:
                  number: 5000
</code></pre>
<hr />
<pre><code>D:Path&gt;kubectl get ing
NAME               CLASS    HOSTS         ADDRESS        PORTS   AGE
services-ingress   &lt;none&gt;   mydemo.info   192.168.40.1   80      15m
</code></pre>
<p>Are there any additional configuration required to access the app via ingress?</p>

<p>The issue is that you need to access it with a Host head of <code>mydemo.info</code> for that Ingress spec to work. You also need to confirm you have an Ingress Controller installed, usually ingress-nginx for new users but there are many options. Then you would look for the Ingress Controllers NodePort or LoadBalancer service and access through that.</p>
