Praxis documentationv0.7.2 · Guide
Install and run Praxis
Install Praxis and send a request through your first proxy.
On this page
Praxis v0.7.2 is the current default documentation release. Use its image for built-in filters and ordinary proxy tasks. Build from source only when developing Praxis or enabling a feature that requires a custom build.
Choose how to run it
Container image
Pull the version matching your documentation:
docker pull ghcr.io/praxis-proxy/praxis:0.7.2
For the FIPS variant of the same release, append -fips to the tag:
docker pull ghcr.io/praxis-proxy/praxis:0.7.2-fips
The Praxis image package lists supported tags and platforms. For FIPS, use the same release tag with -fips appended. Praxis AI has its own release numbers; its current documentation release is v0.5.0. See the Praxis AI image package for its standard and FIPS image tags.
To check that Praxis is running, start the image:
docker run --rm --publish 127.0.0.1:8080:8080 ghcr.io/praxis-proxy/praxis:0.7.2
In another terminal, request the default static response:
curl -i http://127.0.0.1:8080/
It returns HTTP 200 with {"status":"ok","server":"praxis"}. This confirms the proxy is reachable; to forward requests to an application service, use the first reverse-proxy tutorial. Stop the container with Ctrl+C.
For a custom configuration, set the listener to 0.0.0.0:8080 and mount the file at /etc/praxis/config.yaml:
docker run --rm --publish 127.0.0.1:8080:8080 \
--volume "$PWD/praxis-container.yaml:/etc/praxis/config.yaml:ro" \
ghcr.io/praxis-proxy/praxis:0.7.2
An address such as 127.0.0.1 refers to the container itself. Configure an upstream address the container can reach; when Praxis and the backend are both containers, place them on the same Docker network.
Build from source for development or gated features
Build from source when contributing code or enabling a compile-time feature that the image does not include. Release v0.7.2 requires Rust 1.96.0, CMake 3.31 or newer, a C/C++ compiler, pkg-config, and OpenSSL development headers.
git clone https://github.com/praxis-proxy/praxis.git
cd praxis
git checkout v0.7.2
cargo build --locked --release -p praxis-proxy
./target/release/praxis --version
The binary starts with its built-in local configuration on 127.0.0.1:8080 if you do not pass a config file. That default returns a JSON status response; it is a startup check, not a reverse-proxy example. Use -c path/to/config.yaml or --config path/to/config.yaml to run your own YAML configuration.
For a real forwarded request, follow the first reverse-proxy tutorial. It uses a local backend and opts in to private endpoints only for that development setup. Continue with configuration and operations, or see contributor setup (Praxis v0.7.2) if you plan to change Praxis itself.