Setting alternate Rancher Server HTTP ports Docker for Desktop (Mac) Kubernetes in yml

Hi. I have managed to get Rancher running in Docker for Mac via a helm chart located at GitHub - jgreat/server-chart at 2.0.4. with a domain using letsencrypt. Because you cannot validate the letsencrypt cert when your local machine is not accessible from the web, you can use the certbot method to create a cert, and then create a secret in rancher to have this work. This brings some potential for local development on the single node that could eliminate the quirks of having to use MiniKube to run a local Kubernetes

The subnet Docker for Mac uses is 192.168.65.0 by default.

49%20PM

This means that a workload deployed on the local cluster in a namespace will result in a link such as http://192.168.65.3:31500 when running as a NodePort.

Unfortunately when clicking on this link it cannot access this address:

rather it becomes accessible at localhost:31500 or 127.0.0.1:31500 to my surprise.

I have filed an issue with Docker for Mac so that the magic of this is explained and also perhaps there is a way of turning this off.

My goal in getting Rancher to run locally is to make it easy to manage local tooling where I can use a port 443 on my machine to access the tools via urls like https://drone.my.domain. Because Rancher server uses port 80 and port 443, to realize what I want to accomplish, it appears the default ports of Ranch must be changed to allow a load balancer to be set and exposed on the host since there can be only one use of port 80 and port 443.

The core files in the helm chart that identify the ports are as follows:

I am looking for advice on modifying these files for alternate HTTP ports so I can take some next steps in having Rancher working locally and natively on the Mac.

While I want a solution to the helm chart approach for a local kubernetes cluster, I tried a second approach using a custom port configuration with the conventional install together with a dns-validated lets encrypt wildcard to import the docker for desktop kubernetes cluster. I have this working with a custom port 8443 with the cert, so I can enable 80 and 443 to be used by the host. In this scenario, the same thing prevails with HostPort, and NodePort links that don’t work. The NodePort port selected by Rancher can be used with 127.0.0.1 to get to the workload. I can’t get a balancer config to work with the docker for desktop kubernetes cluster to expose the workload properly.