Setting up Collabora integration using a different link for server and client?

I am trying to set up Collabora integration. Both NextCloud and Collabora are in docker with Caddy as a reverse proxy. Due to hairpin routing issues, I cannot have NextCloud connect to Collabora using so I instead want it to communicate using the Docker network via http://collabora:9980. However, a user cannot connect to http://collabora:9980. So, I would like to have NextCloud communicate via the internal network but set up the iframe using the actual subdomain. Is this possible?

I can provide more details if needed.


I’m not sure if I understood it correctly but from what I’m understanding you want to give access to your Nextcloud and Collabora servers from their public subdomain but preventing the hairpin routing issues for internal devices ?

If it’s the case then you can add manual DNS entries in your internal DNS and configure:

That will only affect users using your DNS so only internal users. That mechanism is called split DNS.