Repository navigation
Allow custom Caddy configuration inside the generated Coolify management vhost #11236
Replies: 2 comments 2 replies
|
As far as I know, Coolify only generates / edit the You aren't the only one who wants to make custom edits to this. Maybe it can be solved in the similar way as with the ready only mode of the |
|
Thanks, I dug into that workaround a little further and I think the Container Labels-style ownership toggle may be the cleaner solution. One issue with leaving Settings > General > URL empty is that the instance FQDN is also used as Coolify's canonical base URL. So clearing the instance URL lets the user take over That makes me think these concerns should probably be separate:
That seems very similar to the existing Container Labels management pattern and avoids requiring users to give up normal URL/webhook generation just to customize the management vhost. |
Uh oh!
There was an error while loading. Please reload this page.
Related to #10332 and the routing limitations discussed in #10303.
I have a similar management-plane access-control requirement, but a simple dashboard IP allowlist is not sufficient in my case.
I want the Coolify dashboard, realtime endpoint, and terminal endpoint accessible only over Tailscale/private networking, while keeping a very small part of the Coolify API, specifically /api/v1/deploy, publicly reachable for deployment webhooks.
With Caddy, Coolify currently generates and owns coolify.caddy, roughly:
Because the final proxy covers the whole hostname, restricting access externally is difficult without either duplicating Coolify's internal routing or modifying a file that Coolify regenerates.
Would you be open to adding a supported advanced-user Caddy extension point inside this generated site block, while keeping coolify.caddy itself managed/read-only?
Conceptually:
Coolify would continue owning the domain, TLS, internal service names, realtime/terminal routing, and regeneration. Advanced users would only own the imported fragment.
This would support cases such as:
private/Tailscale-only dashboard access
keeping /api/v1/deploy publicly reachable
office/VPN IP restrictions
other Caddy-native access-control policies
without requiring users to replace or duplicate Coolify's generated management configuration.
Since Coolify already supports additional Caddy dynamic configuration files, this seems like a relatively small extension of the existing model.
I’m willing to implement and test this as a PR immediately if this approach fits the project direction. I’d keep the initial change intentionally narrow and backward-compatible: no custom fragment means unchanged behavior, validate before reload, and provide an obvious reset/recovery path.
All reactions