INTEGRITY Cloudflare Docs

Tunnel

Manage Cloudflare Tunnels directly from Wrangler. Create, run, and manage tunnels that securely connect your local services to Cloudflare's network — no public IPs required.

Wrangler manages the cloudflared binary automatically. On first use, Wrangler will prompt you to download cloudflared to a local cache directory. You can skip this by installing cloudflared yourself and adding it to your PATH, or by setting the CLOUDFLARED_PATH environment variable to point to an existing binary.

tunnel create

Create a new remotely managed Cloudflare Tunnel.

wrangler tunnel create <NAME>

Tunnels created via Wrangler are always remotely managed — configure them in the Cloudflare dashboard or via the API.

After creation, use wrangler tunnel run with the tunnel ID to start the tunnel.

npx wrangler tunnel create my-app
Creating tunnel "my-app"
Created tunnel.
ID: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415
Name: my-app

To run this tunnel, configure its ingress rules in the Cloudflare dashboard, then run:
   wrangler tunnel run f70ff985-a4ef-4643-bbbc-4a0ed4fc8415

The following global flags work on every command:


tunnel delete

Delete a Cloudflare Tunnel from your account.

wrangler tunnel delete <TUNNEL> [OPTIONS]
npx wrangler tunnel delete f70ff985-a4ef-4643-bbbc-4a0ed4fc8415
Are you sure you want to delete tunnel "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415"? This action cannot be undone. (y/n)
Deleting tunnel f70ff985-a4ef-4643-bbbc-4a0ed4fc8415
Tunnel deleted.

The following global flags work on every command:


tunnel info

Display details about a Cloudflare Tunnel, including its ID, name, status, and creation time.

wrangler tunnel info <TUNNEL>
npx wrangler tunnel info f70ff985-a4ef-4643-bbbc-4a0ed4fc8415
Getting tunnel details
ID: f70ff985-a4ef-4643-bbbc-4a0ed4fc8415
Name: my-app
Status: healthy
Created: 2025-01-15T10:30:00Z
Type: cfd_tunnel

The following global flags work on every command:


tunnel list

List all Cloudflare Tunnels in your account.

wrangler tunnel list

The output includes the tunnel ID, name, status, and creation date for each tunnel. Only non-deleted tunnels are shown.

npx wrangler tunnel list
Listing Cloudflare Tunnels

ID                                   Name       Status    Created
f70ff985-a4ef-4643-bbbc-4a0ed4fc8415 my-app     healthy   2025-01-15T10:30:00Z
550e8400-e29b-41d4-a716-446655440000 api-tunnel inactive  2025-01-10T15:45:00Z

The following global flags work on every command:


tunnel run

Run a Cloudflare Tunnel using the cloudflared daemon. This starts a persistent connection between your local machine and Cloudflare's network.

wrangler tunnel run [TUNNEL] [OPTIONS]

Named tunnels are remotely managed — configure ingress rules (which local services to expose) in the Cloudflare dashboard or via the API before running the tunnel.

There are two ways to run a tunnel:

By tunnel name or ID (fetches the token via the API):

npx wrangler tunnel run my-app

By token (no API authentication needed — useful for CI/CD or remote servers):

npx wrangler tunnel run --token eyJhIjoiNGE2MjY...

Press Ctrl+C to stop the tunnel. Wrangler will send a graceful shutdown signal to cloudflared before exiting.

The following global flags work on every command:


tunnel quick-start

Start a free, temporary tunnel without a Cloudflare account using Quick Tunnels. This is useful for quick demos, testing webhooks, or sharing local development servers.

wrangler tunnel quick-start <URL>

The tunnel is assigned a random *.trycloudflare.com subdomain and lasts for the duration of the process.

npx wrangler tunnel quick-start http://localhost:8080
Starting quick tunnel to http://localhost:8080...
Your tunnel URL: https://random-words-here.trycloudflare.com

The following global flags work on every command: