Member-only story
HOWTO securely share & access local K8s services with Tailscale 🔐

This tutorial shows how to deploy and use the Tailscale Kubernetes operator 🔗 to share private Kubernetes apps securely via your FREE tailnet from Tailscale and a cluster ingress. I’ll be able to access my simplest K8s toy app deployed on a local Rancher Desktop with HTTPS on any browser when I’m logged into Tailscale.
After you’ve built a cloud native app locally and want to use it or share it with others outside of your private local network, there’s often a lot of yucky admin toil. This toil means you will likely have to spend money to run your own K8s cluster and figure out all of the networking and certificates required 😵💫. Thankfully, Tailscale and their Kubernetes operator make light work of this! 🙌
Prerequisites:
- FREE Tailscale account 🆓 https://tailscale.com/
- Your own local K8s cluster set up following my simplest tutorial with FREE Rancher Desktop 🔗. I find this to be the easiest path because Rancher Desktop installs helm and kubectl for you.
The first five steps follow along with the Tailscale Kubernetes operator docs here: https://tailscale.com/kb/1236/kubernetes-operator#setup
Steps:
- Pick a fun DNS name for your tailnet
- Enable MagicDNS & HTTPS in Tailscale
- Update your tailnet policy file in Tailscale
- Create an OAuth client in Tailscale
- Install the Tailscale Kubernetes operator with Helm
- Deploy a K8s ingress with the right parameters
1/6: Pick a fun DNS name for your tailnet
Let’s start with something fun! 😄 Pick a fun DNS name for your tailnet at this URL in the Tailscale admin console: https://login.tailscale.com/admin/dns
Click the Rename tailnet… button to get a dialog like the one below. The default tailscale DNS that is in the form…