<p>I have setup strapi on kubernetes, everything is running fine but when I am trying to hit APIs exposed by strapi from my frontend application, which is running on HTTPs I am getting an error as Kubernetes ingress has exposed strapi on HTTP. I am clueless how to configure strapi for HTTPS request. I would be glad if someone could guide me.</p>

<p>Basically Ingress provides different mechanisms of TLS termination. </p>

<p>If your frontend application can handle https, you should just route the tls traffic to the respective service. If your frontend application has no tls capabilities, you should use ingress https termination. 
<a href="https://kubernetes.io/docs/concepts/services-networking/ingress/" rel="nofollow noreferrer">https://kubernetes.io/docs/concepts/services-networking/ingress/</a></p>

<p>http:</p>

<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /testpath
        backend:
          serviceName: test
          servicePort: 80
</code></pre>

<p>Example https config from kubernetes, how it would look if your service does not do https:</p>

<pre class="lang-sh prettyprint-override"><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: frontend-application-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  tls: 
  - hosts: 
    - mydomain.com
    secretName: mycertificate
  rules:
  - host: mydomain.com
    https:
      paths:
      - path: /
        backend:
          serviceName: frontend-application
          servicePort: http
</code></pre>
