Grux - High Performance Web Server

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.

Why Choose Grux?

Blazing Fast

Optimized for maximum throughput and minimal latency. Handle thousands of concurrent connections with ease.

🔒 Secure by Default

Modern security practices built-in from the ground up. HTTPS support with certificate management.

⚙️ Simple Configuration

Clean, intuitive configuration with built-in web interface. No complex syntax that can be hard to understand.

🧠 Resource Efficient

Extremely low memory usage and very low CPU overhead per request. Perfect for cloud deployments and edge computing.

🐘 PHP Support

Setup a site to run PHP applications effortlessly and improve the performance of your PHP applications, such as WordPress or Laravel.

📊 Built-in Monitoring

Real-time metrics and health checks. Know exactly what's happening with your server and see performance insights at a glance.

Get Started With Grux

1

Download Release

Download the release appropriate for your platform directly from GitHub Releases.

2

Extract and Run

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.

3

Configuring Grux with the admin portal

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.

1

Install Docker

Make sure Docker is installed on your system.

2

Basic Run

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

3

Extended Example (Optional)

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.

1

Download docker-compose.yml

Download the docker-compose.yml from the Grux GitHub repository root and adjust for your needs.

2

Run with Docker Compose

docker compose up -d

Run this in the same directory as the docker-compose.yml file.

3

Basic Example

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.

1

Install Dependencies

Install Rust framework from https://rust-lang.org/tools/install/ and clone the Grux repository with git.

2

Clone the Repository

git clone https://github.com/DaevTech/Grux.git

This will create a local copy of the Grux repository.

3

Build and Run

cargo run -- -o DEV

This will run it in dev mode, with trace log enabled.

4

Build Admin Portal (Optional)

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

Join the Community

Grux is open source and thrives on community input and help. Whether you're reporting bugs, submitting features, or improving documentation - every contribution matters.