The following is a quick guide to using nginx and with a custom domain name to allow direct access to your plex instance and not have to rely on Plex Relay which limits bandwidth to 2Mbps.
Use DynuDNS to setup your chosen domain e.g., myservers.com, do this before anything else - you don't need to use DynuDNS, but it's free and works great. I use nginx proxy manager, as my reverse proxy, to map ports to the appropriate services/servers on my network. In this case Plex. The only ports to open on your firewall should be 80 and 443, and point these to the internal nginx proxy manager IP. These ports then assist in redirecting incoming http and https connections to the appropriate services/servers and ports.
Therefore, now when you hit http://*.myservers.com or https://*.myservers.com I'm contacting the nginx server for routing data to the appropriate IP and port.
On nginx, setup a proxy host for your Plex instances e.g., plex.myservers.com. Route it to the host IP of your Plex server, and appropriate port i.e. 32400. Configure this proxy host to use SSL, I use DynuDNS for this free SSL certs too. Make the certificate a wildcard, so *.myservers.com and myservers.com are covered - this will allow you to secure any subdomains you create. Configure your Plex network settings. You do not need remote access enabled on your Plex service, strangely. Disable relay, you are going to steam directly from your network. Configure Custom server access URLs to have your domain covered e.g., https://plex.myservers.com
At this point you should be good, if you run pi-hole on your network like me, I needed to configure a local DNS for plex.myservers.com to point to my nginx IP, so the local streaming wouldn't go out through the WAN.