googleforgames / global-multiplayer-demo

This multiplayer demo is a cloud first implementation of a global scale, realtime multiplayer game utilising dedicated game servers, utilising both Google Cloud's products and open source gaming solutions.
Apache License 2.0
95 stars 14 forks source link

Add instructions to run locally #226

Closed fediazgon closed 8 months ago

fediazgon commented 8 months ago

If you think this is a good idea and plausible, I would be interested in helping with this.

This is a great project to get familiar with googleforgames components in a real-world scenario. However, the current instructions only allow the deployment in Google Cloud, which can incur significant costs (as warned). I was wondering if there is the possibility of running everything in minikube instead.

Most platform components can be easily deployed in minikube (except Anthos). Services as well. And Spanner could be replaced with the Cloud Spanner emulator.

Do you think this could be valuable? Or is it too cumbersome to do due to the project being primarily designed to run in Google Cloud? If you think it is a good idea, do you think aggregating k8s manifests with a single kustomize command would be a good way to start (as, for example, explained in the kubeflow docs)?

markmandel commented 8 months ago

I'm not sure how this would be possible, given we use a bunch of cloud hosted services (which is admittedly the point of the demo), such as Cloud Build, Cloud Deploy, Anthos Service Mesh, around 6 global Kubernetes clusters, GKE Autopilot, and more.

Open to ideas, but does seem at least a tad tricky 😃