Enable HTTPS, a Nov-2021 attempt

The thread is a bit old, but I thought it would be useful to post the solution I finally went for. It was so straightforward that I missed it completely in the first place.

  • Install jupyter/binderhub under plain http, like I showed at the very beginning of my first post here
  • Reserve two static IPs, point my domains two each one
  • Create two GKE ManagedCertificate’s for them, wait and be sure they get provisioned
  • Create an ingress for binderhub and point it to the ‘binder’ service, port 80
  • Create another ingress for jupyterhub and point it the ‘proxy-public’ service, port 80

That’s it! Now the https traffic is nice and certified and gets redirected internally in the cluster to http traffic, which is nicely setup. The ingress also contains the cors annotations.

I was so confused while trying to use one external IP, when there are two involved. Also I don’t know why I was trying to use NodePort services while LoadBalancer was working perfectly fine.

I then had some problems with websockets dropping out, but that’s another story.