Grux is a blazing fast web server designed to deliver exceptional performance, reliability and just as important, ease of administration and monitoring.
100% Open Source and free to use for everyone.
Optimized for maximum throughput and minimal latency. Handle thousands of concurrent connections with ease.
Modern security practices built-in from the ground up. HTTPS support with certificate management.
Clean, intuitive configuration with built-in web interface. No complex syntax that can be hard to understand.
Extremely low memory usage and very low CPU overhead per request. Perfect for cloud deployments and edge computing.
Setup a site to run PHP applications effortlessly and improve the performance of your PHP applications, such as WordPress or Laravel.
Real-time metrics and health checks. Know exactly what's happening with your server and see performance insights at a glance.
Download the release appropriate for your platform directly from GitHub Releases.
This is a ready to go build, so just extract it to a proper locationa and run it.
Check out http://localhost for the default Grux page.
To do configuration, go to https://localhost:8000 and login with the user "admin" and the password given in the output from the server on first run. Save it, as it will NOT be shown again.
Make sure Docker is installed on your system.
docker run --name grux1 -p 80:80 -p 443:443 -p 8000:8000 -d ghcr.io/daevtech/grux:latest
Grux is now available on http://localhost and admin portal on https://localhost:8000
docker run --name grux1 -p 80:80 -p 443:443 -p 8000:8000 \
-v ./my-web-content:/app/www-default:ro \
-v ./logs:/app/logs \
-v ./certs:/app/certs \
-v ./db:/app/db \
-d ghcr.io/daevtech/grux:latest
This maps in your own content and persists data.
Download the docker-compose.yml from the Grux GitHub repository root and adjust for your needs.
docker compose up -d
Run this in the same directory as the docker-compose.yml file.
services:
grux:
image: ghcr.io/daevtech/grux:latest
ports:
- "80:80" # HTTP
- "443:443" # HTTPS
- "8000:8000" # Admin/API port
volumes:
- ./db:/app/db
- ./logs:/app/logs
- ./certs:/app/certs
restart: unless-stopped
This provides persistent database, logs, and certificates.
To serve your own content, you can mount a volume to the /app/www-default directory in the container.
Install Rust framework from https://rust-lang.org/tools/install/ and clone the Grux repository with git.
git clone https://github.com/DaevTech/Grux.git
This will create a local copy of the Grux repository.
cargo run -- -o DEV
This will run it in dev mode, with trace log enabled.
If you want the admin portal running:
cd www-admin-src
npm install
npm run build
Grux can now be found on http://localhost and admin portal on https://localhost:8000
Grux is open source and thrives on community input and help. Whether you're reporting bugs, submitting features, or improving documentation - every contribution matters.