Migrate production server to GCP load balancers w/ Google-managed SSL certs
- Dominant language
- Haskell
- Stars
- 1.3k
- Forks
- 201
- PR merge metrics
- No merged PRs in 30d
Description
Currently, the production CodeWorld server runs on a GCP Compute Engine instance with a static IP address, proxies the `codeworld-server` and `codeworld-game-server` binaries behind nginx, and runs certbot to keep the SSL certs up-to-date that are used by the nginx instance on the same server. This is a complex setup, with [detailed instructions](https://github.com/google/codeworld/blob/master/ServerSetup.md) that try to help with the setup process, but in practice are out of date. I'm afraid to set up a server from scratch, so I keep cloning and modifying the existing server instead.
Here's a better idea: the production server ONLY runs `codeworld-server` and `codeworld-game-server`, each on their own ports. These instances don't have public IP addresses at all. I use a standard GCP HTTPS load balancer with a Google-managed certificate (basically the same as a certbot certificate) to proxy access from the outside world. Much easier to set up, and trivial to scale to more build servers if necessary.
Contributor guide
Assessment
This issue has not been assessed yet.