You have two options:
- Deploy Geoserver in a production environment per their documentation. This would mean you deploy it in a full-fledged server, not the one that's bundled with it. Most of these allow you to change the port they are listening to, and also the routing. Part of this is described here, but you would also need to follow the documentation of the container server of your choice, such as Tomcat or Jetty.
- Deploy a reverse proxy on your local machine. This is essentially another webserver that listens where you want your Geoserver to be, and then re-directs those requests to Geoserver at its default URL. This would mean you would not be able to keep it at http://localhost:8080/, but rather http://localhost/ (which defaults to 80) or some other port where you would like the server to listen to, such as http://localhost:9999/. Examples of web servers that can act as Reverse Proxy for Geoserver are Apache httpd, NGINX, and Microsoft IIS/
To speak to the comment about mapping DNS to that subdomain, that could also work. You would need to look for the CNAME type record in your DNS settings.
For most of these setups, make sure you adjust the Geoserver base url setting in the GUI or via another means.