conoid

CONOID

Release License: MIT GitHub tag


Conoid is an implementation of localtunnel that bypasses a firewall or NAT through a TCP tunnel to expose local development servers to the internet, as well as a simple HTTP server that can be used to serve static files.

While you can expose as many local servers as you want, conoid connects to the localtunnel server only on a single port - 5000, and directs traffic to your servers based on a mapping created while making the initial connections.

Architecture

Installation

Homebrew

Tap

brew tap deestarks/conoid

Install

brew install conoid

Start

brew services start conoid

Confirm conoid is running by going to http://127.0.0.1:5000 on your browser. You should see a welcome page.

Usage

Expose a local server to the internet

conoid add \
    --name <your_app_name> --type server \
    --listener <your_server_address> --tunnel

E.g.

conoid add \
    --name my_app1 --type server \
    --listener http://127.0.0.1:8080 --tunnel

Restart conoid server - brew services restart conoid

Serve static files

conoid add \
    --name <your_app_name> --type static \
    --directory <document_directory>

E.g.

conoid add \
    --name my_app2 --type static \
    --directory .

To expose to the internet, pass the --tunnel flag

Restart conoid server - brew services restart conoid

Show the details of a service

conoid ps --name <your_app_name>

List services

Use the help flag conoid [command] --help or -h for more commands.