Skip to content

macOS

You can install cloudflared as a system service on macOS.

Prerequisites

Before you install Cloudflare Tunnel as a service on your OS, follow Steps 1 through 4 of the Tunnel CLI setup guide. At this point you should have a named tunnel and a config.yml file in your $HOME/.cloudflared directory.

1. Configure cloudflared as a service

By default, Cloudflare Tunnel expects all of the configuration to exist in the $HOME/.cloudflared/config.yml configuration file. At a minimum you must specify the following arguments to run as a service:

ArgumentDescription
tunnelThe UUID of your tunnel
credentials-fileThe location of the credentials file for your tunnel

2. Run cloudflared as a service

You can install the service to either run at login or at boot.

Run at login

Open a terminal window and run the following command:

Terminal window
cloudflared service install

Cloudflare Tunnel will be installed as a launch agent and start whenever you log in, using your local user configuration found in ~/.cloudflared/.

Run at boot

Open a terminal window and run the following command:

Terminal window
sudo cloudflared service install

Cloudflare Tunnel will be installed as a launch daemon and start whenever your system boots, using your configuration found in /etc/cloudflared.

3. Manually start the service

Run the following command:

Terminal window
sudo launchctl start com.cloudflare.cloudflared

The output will be logged to /Library/Logs/com.cloudflare.cloudflared.err.log and /Library/Logs/com.cloudflare.cloudflared.out.log.

Next steps

You can now route traffic through your tunnel. If you add IP routes or otherwise change the configuration, restart the service to load the new configuration:

Terminal window
sudo launchctl stop com.cloudflare.cloudflared
sudo launchctl start com.cloudflare.cloudflared