So I've got a couple of services that I access using mydomain.org:1234 for example, but since Nextcloud runs its own web server it's hosted on mydomain.org/nextcloud.
How do I set up my services so I can access them from a friendly URI like Nextcloud instead of ports?
You want a reverse proxy. But if nextcould is already reserving ports 80/443 you need a bit more configuration as it's not possible for multiple processes to use the same port.
Depends on how your infra is setup but if you're using a reverse proxy you can do it fairly easily. This example is assuming cloudflare as its what I use.
Go into cloudflare -> dns then add cname records for your services. The cname record should be service.mydomain.com. Then all you gotta do is tell your proxy what that cname points to. Gonna be honest, been using truenas scale for a while and it does it differently that straight docker which I assume you're using so I probably wont be much more help but it should at least get you started. If you aren't using a reverse proxy, you should definitely start. Look up Traefik.
This means all incoming connections on port 80 and 443 now will be handled by your reverse proxy and depending on the requested URL, the reverse proxy will fetch the desired website contents from the origin web server. I personally use nginx but there exists other good reverse proxies you can use.