torana

Quick start

A minimal config: one HTTP listener, one route, one upstream.

torana.toml
[global]
log_level = "info"
metrics_addr = "127.0.0.1:9090"

[[listener]]
addr = "127.0.0.1:8080"
protocol = "http"

[[route]]
name = "default"
upstream = [{ addr = "http://127.0.0.1:3000" }]

Run it, send a request, check the metrics:

shell
./torana --config torana.toml &
curl -i http://127.0.0.1:8080/       # proxied to :3000
curl http://127.0.0.1:9090/metrics   # prometheus text

HTTPS termination

add a tls listener
./scripts/gen-certs.sh   # self-signed localhost pair

[[listener]]
addr = "0.0.0.0:8443"
protocol = "https"
tls_cert = "./certs/tls.crt"
tls_key = "./certs/tls.key"

Certificates are PEM; any CA-issued pair works the same way. Prefer certificates managed automatically? See automatic HTTPS via ACME.

Next: the full configuration reference.