Sentinel can be installed via the install script, from pre-built binaries, built from source, or run as an OCI container.
Install Script (Recommended)
The easiest way to install Sentinel is using the install script, which automatically detects your OS and architecture:
|
The script downloads the appropriate binary and installs it to ~/.local/bin. You may need to add this to your PATH:
Add this line to your shell profile (~/.bashrc, ~/.zshrc, etc.) to make it permanent.
Verify Installation
Pre-built Binaries
Alternatively, download binaries manually from GitHub Releases.
Linux (amd64)
macOS (Apple Silicon)
macOS (Intel)
Build from Source
Building from source requires Rust 1.85 or later.
Prerequisites
# Install Rust via rustup
|
# Ensure you have Rust 1.85+
Clone and Build
The binary will be at target/release/sentinel.
Install System-wide
OCI Container
Sentinel provides official OCI container images.
Pull the Image
# Using Docker
# Using Podman
Run the Container
# Using Docker
# Using Podman
Compose File
Works with both Docker Compose and Podman Compose:
version: '3.8'
services:
sentinel:
image: ghcr.io/raskell-io/sentinel:latest
ports:
- "8080:8080" # HTTP proxy
- "9090:9090" # Metrics
volumes:
- ./sentinel.kdl:/etc/sentinel/sentinel.kdl:ro
- ./certs:/etc/sentinel/certs:ro
restart: unless-stopped
Run with:
# Docker Compose
# Podman Compose
Configuration File Location
By default, Sentinel looks for configuration in these locations:
- Path specified with
-cor--configflag ./sentinel.kdl(current directory)/etc/sentinel/sentinel.kdl
Create a Basic Config
Running Sentinel
Basic Usage
# Run with default config location
# Run with specific config file
# Validate config without running
# Run with verbose logging
Command Line Options
| Option | Description |
|---|---|
-c, --config <FILE> | Path to configuration file |
-t, --test | Test configuration and exit |
--log-level <LEVEL> | Log level (trace, debug, info, warn, error) |
--version | Print version information |
--help | Print help |
Systemd Service
For production deployments on Linux, create a systemd service:
# Create sentinel user
# Set permissions
# Enable and start
Managing the Service
# Check status
# View logs
# Reload configuration (graceful)
# Restart
Verifying the Installation
After starting Sentinel, verify it’s running:
# Check if listening
# Check metrics endpoint
Next Steps
- Quick Start - Get up and running in 5 minutes
- Basic Configuration - Learn the configuration format
- First Route - Create your first routing rule