Configuration of Tyk when having many sites running in the server

The dashboard works best with a hostname instead of an IP, the gateway doesn’t care, so no domain needed unless you want to expose the gateway publicly.

No, the gateway is a proxy, so the requests will be going from Caddy → Tyk → Application, i.e.:

MyRestAPI running on port 8200 -> Tyk (8080) -> MyRestAPI.com (80)

It should be ok so long as your traffic is low, it really depends on your traffic levels. Tyk needs redis and MongoDB, Redis can eat a lot of RAM because it stores all data in memory, and MongoDB (if your data set becomes very large), will want a lot of RAM to perform well (e.g. run aggregation pipelines across the raw log set instead of the aggregate log set).

Yes, but you’ll need to make sure that Caddy is sending on the host header when it proxies to Tyk, and In Tyk you want to set the REST API to be on a custom domain (MyRestAPI.com) with a listen path set to root (/), this way when the request comes from Caddy, Tyk will know what to listen for.