I'm trying to setup ingress on docker driver for minikube 1.16 on windows 10 home (build 19042). Ingress on docker driver wasn't supported before but it is now on minikube 1.16: https://github.com/kubernetes/minikube/pull/9761
I've been trying something by myself but i got ERR_CONNECTION_REFUSED when connecting to the ingress at 127.0.0.1 OR kubernetes.docker.internal
Steps:
Here is my configuration:
#cluster ip service
apiVersion: v1
kind: Service
metadata:
  name: client-cluster-ip-service
spec:
  type: ClusterIP
  selector:
    component: web
  ports:
  - port: 3000
    targetPort: 3000
# not posting deployment code because it's not relevant, but there is a deployment with selector 'component:web' and it's exposing port 3000.
#ingress service
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-service
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/use-regex: 'true'
    nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
  rules:
    - host: kubernetes.docker.internal
      http:
        paths:
          - path: /?(.*)
            pathType: Prefix
            backend:
              service:
                name: client-cluster-ip-service
                port:
                  number: 3000I have dns redirect in hosts file.
I've also tried "minikube tunnel" on another terminal but no luck either.
Thanks!
There is a mistake in your ingress object definition under rules field: 
  rules:
    - host: kubernetes.docker.internal
    - http:
        paths:The exact problem is the - sing in front the http which makes the host and http separate arrays. 
Take a look how your converter yaml looks like in json:
{
  "spec": {
    "rules": [
      {
        "host": "kubernetes.docker.internal"
      },
      {
        "http": {
          "paths": [
            {
              "path": "/?(.*)",
              "pathType": "Prefix",
              "backend": {
---
This is how annotations looks like with your ingress definition.
spec:
  rules:
    - host: kubernetes.docker.internal
      http:
        paths:
          - path: /?(.*)
            pathType: PrefixAnd now notice how this yaml converted to json looks like:
{
  "spec": {
    "rules": [
      {
        "host": "kubernetes.docker.internal",
        "http": {
          "paths": [
            {
              "path": "/?(.*)",
              "pathType": "Prefix",
              "backend": {
---
You can easily visualize this even better using yaml-viewer