To run multiple versions, I’d suggest setting up each instance as a service on your machine in case of reboots and/or crashes.
Now for serving them, you have two options. The first is just let the users connect to the port directly, but this is generally not done for outward facing services (not that you can’t). The second is to setup a reverse proxy and route the traffic through subdomains or subpaths. Nginx is my go-to solution for this. I’ve also heard good things about Caddy. You’ll most likely have to use subdomains for this, as lots of apps assume they are the root path without some tinkering.
Edit: Corrected incorrect cli arguments and a typo.