Any particular reason why this runs outside the cluster?
Don't know anything about this project, but usually the reason is "because there could be N clusters", and sometimes "because I want the cluster to come and go frequently" (e.g. for testing workloads).
Main reason is that I wanted to be able to support single VPS K3s clusters all the way down to ~512MB.
K3s already takes up about 100MB which only leaves 400 for the application, so trying to run Canine on that machine would probably create too much bloat.