Installation
Installation
Section titled “Installation”Prerequisites
Section titled “Prerequisites”Before installing Faber, ensure you have the following:
- Rust 1.70+: Faber is built with Rust and requires the latest stable toolchain
- Linux with cgroups v2: Faber uses Linux namespaces and cgroups for sandboxing
- Root privileges: Required for sandboxing features (namespaces, cgroups, seccomp)
- Nix (optional): For development environment setup
Building from Source
Section titled “Building from Source”1. Clone the Repository
Section titled “1. Clone the Repository”git clone <repository-url>cd faber
2. Build the Project
Section titled “2. Build the Project”# Build all crates in release modecargo build --release
# Or build in debug mode for developmentcargo build
3. Install the Binary
Section titled “3. Install the Binary”# Install to system PATHsudo cp target/release/faber /usr/local/bin/
# Or run directly from build directory./target/release/faber --help
Development Setup
Section titled “Development Setup”Using Nix (Recommended)
Section titled “Using Nix (Recommended)”If you have Nix installed, you can use the provided flake for a consistent development environment:
# Enter the development shellnix develop
# Build the projectcargo build
# Run testscargo test
Manual Setup
Section titled “Manual Setup”-
Install Rust: Follow the official Rust installation guide
-
Install Dependencies:
Terminal window # Ubuntu/Debiansudo apt-get updatesudo apt-get install build-essential pkg-config libssl-dev# CentOS/RHEL/Fedorasudo yum groupinstall "Development Tools"sudo yum install openssl-devel -
Verify Installation:
Terminal window rustc --versioncargo --version
Docker Installation
Section titled “Docker Installation”Faber provides Docker images for easy deployment:
# Build the Docker imagedocker build -f docker/Dockerfile.prod -t faber:latest .
# Run Faber in a containerdocker run --privileged -p 8080:8080 faber:latest
Note: The --privileged
flag is required for sandboxing features to work properly.
Verification
Section titled “Verification”After installation, verify that Faber is working correctly:
# Check versionfaber --version
# Show helpfaber --help
# Validate default configurationfaber validate
# Start the serverfaber serve
Troubleshooting
Section titled “Troubleshooting”Common Issues
Section titled “Common Issues”- Permission Denied: Ensure you’re running with root privileges for sandboxing features
- cgroups v2 not available: Update your Linux kernel to version 4.5+ and enable cgroups v2
- Build failures: Ensure you have the latest Rust toolchain and all dependencies installed
System Requirements
Section titled “System Requirements”- Kernel: Linux 4.5+ with cgroups v2 support
- Architecture: x86_64 (other architectures may work but are not tested)
- Memory: Minimum 512MB RAM, 1GB+ recommended
- Storage: 100MB+ free space for binary and temporary files
Next Steps
Section titled “Next Steps”After successful installation: