Deploy portr
Self-hosted ngrok alternative with request inspection and replay
portr
Just deployed
Just deployed
/var/lib/postgresql/data
Deploy and Host portr on Railway
portr is an open-source, self-hosted tunnel that puts local HTTP, TCP and WebSocket services on public URLs. It ships a team admin dashboard and a request inspector that lets you view, modify and replay traffic - a private alternative to ngrok that runs on your own domain.
About Hosting portr
This template runs the portr server - admin dashboard plus tunnel proxy in one deployment - backed by the bundled PostgreSQL database. Tunnels use the WebSocket transport, so everything rides Railway's HTTP edge with no raw TCP ports and no SSH host keys. The deploy exposes two ports: 8000 for the admin dashboard and 8001 for the tunnel endpoint. The dashboard works out of the box on the generated Railway domain; to serve tunnel URLs, add a wildcard custom domain (for example *.tunnels.example.com) targeting port 8001 and set PORTR_DOMAIN to it.
Common Use Cases
- Share a local dev server with teammates on a public URL
- Receive webhooks locally, inspect them, and replay requests
- Expose internal tools temporarily without deploying them
Dependencies for portr Hosting
- PostgreSQL (included in this template)
- A domain you control, for the wildcard tunnel DNS record
Deployment Dependencies
- portr documentation: https://portr.dev
- portr on GitHub: https://github.com/amalshaji/portr
Why Deploy portr on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying portr on Railway, you get a private tunneling service for your whole team with minimal setup: managed builds, a bundled database, and TLS on every domain.
Template Content
