For more details about CF Tunnels, please visit this page.
Setup Cloudflared
You have at least two ways to setup Cloudflare Tunnels with Coolify.Automated
1
Setup Tunnels on Cloudflare
-
Go to
https://one.dash.cloudflare.com/. - Select your account.
-
Open
Networks->Tunnels->Create a Tunnel -
Connector:
Cloudflared
-
Choose any name you like.
-
Copy your
Cloudflare Tunnel Tokenfrom any of the commands.

- On the
Route Tunneltab, add the following tunnels:

2
Setup Tunnels on Coolify
-
Add a new server with your server’s
IP Address- it will be reconfigured later on.
- Validate the server.
-
After the server is validated, click on
Configurein theCloudflare Tunnelssection. -
Paste
Cloudflare Tunnel Tokenfrom the previous step and set theSSH Domainto the domain you set in the previous step.
Manual
WIPSetup Resources in Coolify
You have several options to use Cloudflare Tunnels with Coolify.- One domain -> One resource.
- Wildcard subdomain -> All resources.
One domain -> One resource
In this case, you need to add a public domain every time you would like to expose a new resource through Cloudflare Tunnels.- Go to your tunnel settings on Cloudflare. (https://one.dash.cloudflare.com/ -> Networks -> Tunnels -> Select your tunnel)
- Switch to
Public Hostnametab. - Add a new
Public Hostname.
- Go to Coolify and to your resource settings: - Remove any
Domainssettings. - SetPort Mappingsto the same port that you set in thePublic Hostnamesettings. - Deploy & enjoy.
Wildcard subdomain -> All resources
In this case, you only need to setup a wildcard domain once and you can expose all your resources through it.- Go to your tunnel settings on Cloudflare. (https://one.dash.cloudflare.com/ -> Networks -> Tunnels -> Select your tunnel)
- Switch to
Public Hostnametab. - Add a new wildcard
Public Hostname.
- In Cloudflare go to
Networks -> Tunnelsand click on your tunnel name. From the sidebar copy theTunnel ID.
- In Cloudflare go to your
DNSsettings and add a newCNAMErecord with the following settings:Name:*Target:<Tunnel ID>.cfargotunnel.comTTL:Auto
- Go to Coolify and to your resource settings.
Domains to any subdomain of the wildcard domain you set in the previous step.
- Deploy & enjoy.
Post Setup
After everything is setup, you can fully disable direct access to your server by disabling all the ports (exceptSSH (port:22 by default)) on your firewall.
Setup self-hosted Coolify
You can use the one domain withoutCoolify Proxy or wildcard setup with Coolify Proxy to expose your self-hosted Coolify instance to the internet.
With the wildcard setup, you have nothing to do.
With the one domain setup, you need a bit more setup with Coolify to make it work.
Let’s say you configured the following Public Hostnames in Cloudflare:
app.coolify.iomapped tolocalhost:8000realtime.coolify.iomapped tolocalhost:6001
.env file, located in /data/coolify/source folder.
If you have a firewall, you also need to allow the following ports.
Verify
- Navigate to your Coolify instance, as in the example:
https://app.coolify.io. - Login with the root user (the first user you created after installation).
- Open another tab/window and navigate to
https://app.coolify.io/realtime. On the other tab (opened in point 2), you should see a notification about the test event. - If you know what are you doing, you can check the network tab as well. Search for a websocket connection.

