So you need to set it up the serverconfig.xml and serveradmin.xml files.
In serverconfig.xml I have:
<!-- Admin interfaces -->
<property name="WebDashboardEnabled" value="true"/> <!-- Enable/disable the web dashboard -->
<property name="WebDashboardPort" value="8080"/> <!-- Port of the web dashboard -->
<property name="WebDashboardUrl" value=""/> <!-- External URL to the web dashboard if not just using the public IP of the server, e.g. if the web dashboard is behind a reverse proxy. Needs to be the full URL, like "https://domainOfReverseProxy.tld:1234/". Can be left empty if directly using the public IP and dashboard port -->
<property name="EnableMapRendering" value="true"/> <!-- Enable/disable rendering of the map to tile images while exploring it. This is used e.g. by the web dashboard to display a view of the map. -->
I do not have the WebDashboardUrl filled out as it says you don't need it if you are just going to access it with the IP

ort. If you are hosting with a domain name, you'll need to put the full url path to the server there.
https://yourdomainhere.whatever/ probably. Also make sure you have the dashboard port and +2 port forwarded. For me, this is 8080 and 8082.
In serveradmin.xml I have:
<webmodules>
<module name="web.map" permission_level="2000" />
<module name="webapi.Command" permission_level="0">
<method name="GET" permission_level="inherit" />
<method name="POST" permission_level="inherit" />
<method name="PUT" permission_level="inherit" />
<method name="DELETE" permission_level="inherit" />
</module>
</webmodules>
You will have to add this to your serveradmin file. It defaults to just <webmodules />. This here will allow the public to view the map. Set the permission to 1000 to require people have logged in.
All of this I got from this post.