All Projects → alexdlaird → Pyngrok

alexdlaird / Pyngrok

Licence: mit
A Python wrapper for ngrok

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Pyngrok

Ngrok
Expose your localhost to the web. Node wrapper for ngrok.
Stars: ✭ 1,897 (+1093.08%)
Mutual labels:  webhook, tunnel, ngrok, localhost
Lunnel
fast reverse-proxy
Stars: ✭ 293 (+84.28%)
Mutual labels:  reverse-proxy, tunnel, ngrok
Lanproxy
lanproxy是一个将局域网个人电脑、服务器代理到公网的内网穿透工具,支持tcp流量转发,可支持任何tcp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面、http代理、https代理、socks5代理...)。技术交流QQ群 678776401
Stars: ✭ 4,784 (+2908.81%)
Mutual labels:  reverse-proxy, tunnel, ngrok
Tcptunnel
将本地内网服务器映射到公网。
Stars: ✭ 72 (-54.72%)
Mutual labels:  reverse-proxy, tunnel, ngrok
Docker Ngrok
An Ngrok v2 container based on wizardapps/ngrok and fnichol/ngrok
Stars: ✭ 368 (+131.45%)
Mutual labels:  tunnel, ngrok
Host
Expose your LocalHost with this tool
Stars: ✭ 268 (+68.55%)
Mutual labels:  ngrok, localhost
Awesome Network Stuff
Resources about network security, including: Proxy/GFW/ReverseProxy/Tunnel/VPN/Tor/I2P, and MiTM/PortKnocking/NetworkSniff/NetworkAnalysis/etc。More than 1700 open source tools for now. Post incoming.
Stars: ✭ 578 (+263.52%)
Mutual labels:  reverse-proxy, tunnel
Inlets
Cloud Native Tunnel, now inlets PRO
Stars: ✭ 8,420 (+5195.6%)
Mutual labels:  reverse-proxy, tunnel
facebook-send-api-emulator
Facebook Messenger Emulator & Facebook Send API Emulator functionality allowing you to test web hooks on developer's machine.
Stars: ✭ 24 (-84.91%)
Mutual labels:  webhook, localhost
Spike
📣 A fast reverse proxy written in PHP that helps to expose local services to the internet
Stars: ✭ 582 (+266.04%)
Mutual labels:  reverse-proxy, tunnel
Tunnelto
Expose your local web server to the internet with a public URL.
Stars: ✭ 1,138 (+615.72%)
Mutual labels:  tunnel, localhost
anytunnel
内网穿透,内网穿透代理服务器,商用内网穿透代理系统,内网穿透平台,内网穿透多用户会员系统。
Stars: ✭ 115 (-27.67%)
Mutual labels:  tunnel, reverse-proxy
Frp
A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
Stars: ✭ 51,746 (+32444.65%)
Mutual labels:  reverse-proxy, tunnel
Sidedoor
SSH connection daemon for Debian/Raspbian/Ubuntu/etc
Stars: ✭ 97 (-38.99%)
Mutual labels:  reverse-proxy, tunnel
Sish
HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH.
Stars: ✭ 2,087 (+1212.58%)
Mutual labels:  tunnel, ngrok
LightTunnel
LightTunnel-内网穿透映射工具,支持TCP、HTTP、HTTPS穿透映射,支持Windows、Linux、Mac、Android系统
Stars: ✭ 40 (-74.84%)
Mutual labels:  tunnel, reverse-proxy
Docker Host
A docker sidecar container to forward all traffic to local docker host or any other host
Stars: ✭ 769 (+383.65%)
Mutual labels:  tunnel, localhost
portless
Easy local domains with superpowers
Stars: ✭ 106 (-33.33%)
Mutual labels:  ngrok, localhost
FastTunnel
expose a local server to the internet. 高性能跨平台的内网穿透解决方案 远程内网计算机 域名访问内网站点 反向代理内网服务 端口转发 http代理
Stars: ✭ 815 (+412.58%)
Mutual labels:  tunnel, reverse-proxy
Socket Pipe
Stars: ✭ 132 (-16.98%)
Mutual labels:  reverse-proxy, tunnel

pyngrok - a Python wrapper for ngrok

PyPI Version CI/CD Codecov Docs Python Versions PyPI License Tweet

pyngrok is a Python wrapper for ngrok that manages its own binary and puts it on your path, making ngrok readily available from anywhere on the command line and via a convenient Python API.

ngrok is a reverse proxy tool that opens secure tunnels from public URLs to localhost, perfect for exposing local web servers, building webhook integrations, enabling SSH access, testing chatbots, demoing from your own machine, and more, and its made even more powerful with native Python integration through pyngrok.

Installation

pyngrok is available on PyPI and can be installed using pip:

pip install pyngrok

or conda:

conda install -c conda-forge pyngrok

That's it! pyngrok is now available as a package to our Python projects, and ngrok is now available from the command line.

Basic Usage

To open a tunnel, use the connect method, which returns a NgrokTunnel, and this returned object has a reference to the public URL generated by ngrok in its public_url attribute.

from pyngrok import ngrok

# Open a HTTP tunnel on the default port 80
# <NgrokTunnel: "http://<public_sub>.ngrok.io" -> "http://localhost:80">
http_tunnel = ngrok.connect()
# Open a SSH tunnel
# <NgrokTunnel: "tcp://0.tcp.ngrok.io:12345" -> "localhost:22">
ssh_tunnel = ngrok.connect(22, "tcp")

The connect method takes kwargs as well, which allows us to pass additional properties that are supported by ngrok.

This package puts the default ngrok binary on our path, so all features of ngrok are available on the command line.

ngrok http 80

For details on how to fully leverage ngrok from the command line, see ngrok's official documentation.

Documentation

For more advanced usage, pyngrok's official documentation is available at http://pyngrok.readthedocs.io.

Python 2.7

The last version of pyngrok that supports Python 2.7 is 4.1.x, so we need to pin pyngrok>=4.1,<4.2 if we still want to use pyngrok with this version of Python. Its legacy documentation can be found here.

Contributing

If you would like to get involved, be sure to review the Contribution Guide.

Want to contribute financially? If you've found pyngrok useful, a donation would also be greatly appreciated!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].