Quickstart
Build the release binary:
make release
Start Praxis:
./target/release/praxis
The server starts on 127.0.0.1:8080 with a built-in
default configuration. Verify it:
curl http://127.0.0.1:8080/
{"status": "ok", "server": "praxis"}
Proxy to a backend
Create praxis.yaml:
listeners:
- name: web
address: "127.0.0.1:8080"
filter_chains: [main]
filter_chains:
- name: main
filters:
- filter: router
routes:
- path_prefix: "/"
cluster: backend
- filter: load_balancer
clusters:
- name: backend
endpoints:
- "127.0.0.1:3000"
Start Praxis with your config:
./target/release/praxis -c praxis.yaml
Requests to port 8080 are now forwarded to your backend on port 3000:
curl http://127.0.0.1:8080/
Next steps
- Configuration: filter chains, routing, load balancing, TLS, and all options.
- Example configs: working YAML for every feature.
- Filters: built-in filters and how to write your own.