{"repo":"andydunstall/piko","free":true,"listed":false,"github":"https://github.com/andydunstall/piko","clone":"git clone https://github.com/andydunstall/piko.git","description":"An open-source alternative to Ngrok, designed to serve production traffic and be simple to host (particularly on Kubernetes)","language":"Go","stars":2182,"topics":["golang","http","reverse-proxy","http-proxy","tunneling"],"license":"MIT","category":"networking-infra","readme_excerpt":"--- - What Is Piko? - Design Goals - Getting Started - How Piko Works - Support - Docs - Contributing - License What Is Piko? Piko is a reverse proxy that provides a secure way to connect to services that aren’t publicly routable, known as tunneling. Instead of sending traffic directly to your services, your upstream services open outbound-only connections (tunnels) to Piko, then Piko forwards traffic to your services via their established connections. Piko has two key design goals: Built to serve production traffic by running as a cluster of nodes for fault tolerance, horizontal scaling and zero-downtime deployments Simple to host behind a HTTP(S) load balancer on Kubernetes Therefore Piko can be used as an open-source alternative to Ngrok. Such as you may use Piko to expose services in a customer network, a bring your own cloud (BYOC) service, or to connect to user devices. Reverse Proxy In a traditional reverse proxy, you configure routing rules describing how to route incoming traffic to your upstream services. The proxy will then open connections to your services and forward incoming traffic. This means your upstream services must be discoverable and have an exposed port that's accessible from the proxy. Whereas with Piko, your upstreams open outbound-only connections to the Piko server and specify what endpoint they are listening on. Piko then forwards incoming traffic to the correct upstream via its outbound connection. Therefore your services may run anywhere without ","default_branch":null,"files":null,"tree":[],"storefront":"/r/andydunstall","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/andydunstall/piko/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}