<p><a href="https://kubernetes.io/docs/tasks/access-application-cluster/ingress-minikube/" rel="nofollow noreferrer">https://kubernetes.io/docs/tasks/access-application-cluster/ingress-minikube/</a></p>
<p>To enable the NGINX Ingress controller, run the following command:</p>
<pre><code> minikube addons enable ingress
</code></pre>
<p>How to enable it without minikube on windows? Kubernetes is enabled through Docker-desktop. So minikube is not installed.</p>
<h2>UPDATE</h2>
<p>From doc: <a href="https://kubernetes.github.io/ingress-nginx/deploy/#installation-guide" rel="nofollow noreferrer">https://kubernetes.github.io/ingress-nginx/deploy/#installation-guide</a></p>
<pre><code>kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.7.1/deploy/static/provider/cloud/deploy.yaml
</code></pre>
<p>Error:</p>
<pre><code>kubectl describe pod ingress-nginx-controller-78cd9ffdfc-lwrwd -n ingress-nginx

Events:
  Type     Reason       Age                  From               Message
  ----     ------       ----                 ----               -------
  Normal   Scheduled    13m                  default-scheduler  Successfully assigned ingress-nginx/ingress-nginx-controller-78cd9ffdfc-lwrwd to docker-desktop
  Warning  FailedMount  9m (x10 over 13m)    kubelet            MountVolume.SetUp failed for volume &quot;webhook-cert&quot; : secret &quot;ingress-nginx-admission&quot; not found
  Warning  FailedMount  8m53s (x2 over 11m)  kubelet            Unable to attach or mount volumes: unmounted volumes=[webhook-cert], unattached volumes=[webhook-cert kube-api-access-7wb8v]: timed out waiting for the condition
  Normal   Pulling      6m57s                kubelet            Pulling image &quot;registry.k8s.io/ingress-nginx/controller:v1.7.1@sha256:7244b95ea47bddcb8267c1e625fb163fc183ef55448855e3ac52a7b260a60407&quot;
</code></pre>

eastwater
<p>Based from this <a href="https://kubernetes.github.io/ingress-nginx/deploy/#installation-guide" rel="nofollow noreferrer">documentation</a>, you can either install NGINX Ingress through <code>Helm</code> using the project repository chart, or with <code>kubectl apply</code> using YAML manifest.</p>
<p>To install it using <a href="https://kubernetes.github.io/ingress-nginx/deploy/#quick-start:%7E:text=%C2%B6-,If%20you%20have%20Helm,-%2C%20you%20can" rel="nofollow noreferrer">Helm</a>:</p>
<pre><code>helm install --namespace kube-system nginx ingress-nginx --repo https://kubernetes.github.io/ingress-nginx
</code></pre>
<p>If you already have helm, you can use the command:</p>
<pre><code>helm upgrade --install ingress-nginx ingress-nginx \
  --repo https://kubernetes.github.io/ingress-nginx \
  --namespace ingress-nginx --create-namespace
</code></pre>
<p>To install it using <a href="https://kubernetes.github.io/ingress-nginx/deploy/#quick-start:%7E:text=If%20you%20don%27t%20have%20Helm%20or%20if%20you%20prefer%20to%20use%20a%20YAML%20manifest%2C%20you%20can%20run%20the%20following%20command%20instead%3A" rel="nofollow noreferrer">kubectl</a>:</p>
<pre><code>kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.43.0/deploy/static/provider/cloud/deploy.yaml
</code></pre>
<p>Unfortunately, The YAML manifest in the command above was generated with helm template, so you will end up with almost the same resources as if you had used Helm to install the controller.</p>
