Skip to content
This repository has been archived by the owner on Dec 17, 2022. It is now read-only.

jerson/pgrok

This branch is 129 commits ahead of, 3 commits behind inconshreveable/ngrok:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a9320e1 · Dec 16, 2021
Jun 16, 2021
Sep 28, 2019
Sep 1, 2019
Oct 20, 2021
Sep 28, 2019
Sep 28, 2019
Sep 28, 2019
Dec 16, 2021
Sep 1, 2019
Sep 28, 2019
Nov 11, 2021
Feb 5, 2021
Sep 28, 2019
Sep 28, 2019
Sep 28, 2019
Mar 25, 2020
Jun 16, 2021
May 31, 2016
Jul 24, 2021
Jun 4, 2021
Sep 28, 2019
Oct 23, 2021
Dec 7, 2021
Jun 6, 2021
Jun 6, 2021

Repository files navigation

pgrok - Introspected tunnels to localhost

”I want to expose a local server behind a NAT or firewall to the internet.”

ejemplo.me service is shuting down, please take a look, #20

Install client

Install supports Linux and MacOS with homebrew

brew install jerson/tap/pgrok

Usage

pgrok -subdomain=customsubdomain 3000

sample output

pgrok                                                           (Ctrl+C to quit)
                                                                                
Tunnel Status                 online                                            
Version                       3.0/3.0                                           
Forwarding                    http://customsubdomain.ejemplo.me -> 127.0.0.1:3000            
Forwarding                    https://customsubdomain.ejemplo.me -> 127.0.0.1:3000           
Web Interface                 http://127.0.0.1:4040                             
# Conn                        0                                                 
Avg Conn Time                 0.00ms 

Downloads

just download in Release section

Install server

Install supports Linux and MacOS with homebrew

brew install jerson/tap/pgrokd

or you can just download it from download section

Install server with Docker

pgrok and pgrokd available in Docker Hub

Sample server in docker-compose

version: "3.7"

services:
  pgrokd:
    image: jerson/pgrok
    entrypoint: pgrokd
    command: -domain ejemplo.me -httpAddr=:80 -httpsAddr=:443 -tunnelAddr=:4443 -tlsCrt=/certs/tls.crt -tlsKey=/certs/tls.key
    volumes:
      - /home/certs:/certs
    ports:
      - 80:80
      - 443:443
      - 4443:4443

What is pgrok?

pgrok is a reverse proxy that creates a secure tunnel from a public endpoint to a locally running web service. pgrok captures and analyzes all traffic over the tunnel for later inspection and replay.

What can I do with pgrok?

  • Expose any http service behind a NAT or firewall to the internet on a subdomain of ejemplo.me
  • Expose any tcp service behind a NAT or firewall to the internet on a random port of ejemplo.me
  • Inspect all http requests/responses that are transmitted over the tunnel
  • Replay any request that was transmitted over the tunnel

What is pgrok useful for?

  • Temporarily sharing a website that is only running on your development machine
  • Demoing an app at a hackathon without deploying
  • Developing any services which consume webhooks (HTTP callbacks) by allowing you to replay those requests
  • Debugging and understanding any web service by inspecting the HTTP traffic
  • Running networked services on machines that are firewalled off from the internet

Developing on pgrok

pgrok developer's guide

Disclaimer

pgrok is a fork of ngrok

About

Free Introspected tunnels to localhost, like ngrok but free and unlimited

Topics

Resources

License

Stars

Watchers

Forks

Languages

  • Go 73.2%
  • JavaScript 20.7%
  • HTML 4.4%
  • Makefile 1.2%
  • Dockerfile 0.5%