Skip to main content
The ngrok agent is a standalone native executable with zero runtime dependencies. It runs on all major operating systems and architectures, and is distributed through multiple channels to fit your deployment environment.

Installing the ngrok agent

The ngrok agent is available on many platforms and through many popular package managers. Visit the ngrok download page for specific installation instructions based on your setup.

Standalone binary

The ngrok agent is available as a standalone binary with no runtime dependencies. Download it directly from the ngrok download page. The agent supports the following platforms: The agent can update itself with the ngrok update command, even if you didn’t install it with a package manager.

Docker

For detailed instructions on using ngrok with Kubernetes, check out the k8s quickstart.
ngrok provides pre-built docker images for the ngrok Agent with instructions for getting started. An example command for starting a tunnel to port 80 on the host machine looks like this.
Note: the Docker version of ngrok follows the same convention as the agent, for example:

Basic usage

The ngrok docker image wraps the ngrok agent executable. Read the documentation for the ngrok agent CLI docs for all commands.

Run an ngrok Agent pointed at localhost:80

Choose a URL

If you don’t choose a URL, ngrok will assign one for you.

Add a Traffic Policy

Traffic Policy is a configuration language that offers you the flexibility to filter, match, manage, and orchestrate traffic to your endpoints.
traffic-policy.yml

Run in the background

Use a configuration file

Run the ngrok agent with the config file ./ngrok.yml from the host machine:

Pull the ngrok container image

Traffic Inspection

Traffic Inspector

Use Traffic Inspector on your ngrok dashboard

Local web inspection on localhost:4040 (Legacy)

The agent serves this web interface on port 4040 so you’ll need to publish it as well with -p 4040:4040
If you are unable to view the web inspection interface typically available at http://localhost:4040, you may need to map your host port 4040 to port 4040 on the container, for example:
For more details, see the Using ngrok with Docker documentation.

Docker Desktop extension

The ngrok Docker Desktop Extension lets you forward traffic from internet-accessible endpoint URLs to your local Docker containers directly from the Docker Desktop UI. Install the ngrok Docker Desktop Extension to get started. For more details, see the Docker Desktop documentation.

Kubernetes

The ngrok Kubernetes Operator lets you manage ngrok resources natively from within your Kubernetes cluster using Helm. Install the Operator with Helm:
For more details, see the Kubernetes Operator documentation.