Sockudo
Getting Started

Installation

Run Sockudo locally with Docker or from source.

Option 1: Docker (Fastest)

Using Official Docker Images

Pull and run the official Sockudo Docker image:

From Docker Hub:

Terminal
# Pull the latest image
docker pull sockudo/sockudo:latest

# Run with default configuration
docker run -d \
  --name sockudo \
  -p 6001:6001 \
  -p 9601:9601 \
  sockudo/sockudo:latest

From GitHub Container Registry:

Terminal
# Pull the latest image
docker pull ghcr.io/sockudo/sockudo:latest

# Run with default configuration
docker run -d \
  --name sockudo \
  -p 6001:6001 \
  -p 9601:9601 \
  ghcr.io/sockudo/sockudo:latest

Use specific version tags:

Terminal
# Docker Hub
docker run -d \
  --name sockudo \
  -p 6001:6001 \
  -p 9601:9601 \
  sockudo/sockudo:v1.0.0

# Or GitHub Container Registry
docker run -d \
  --name sockudo \
  -p 6001:6001 \
  -p 9601:9601 \
  ghcr.io/sockudo/sockudo:v1.0.0

With custom configuration:

Terminal
docker run -d \
  --name sockudo \
  -p 6001:6001 \
  -p 9601:9601 \
  -v $(pwd)/config:/app/config \
  sockudo/sockudo:latest

Using Docker Compose

For development with the full repository:

Terminal
cd sockudo
docker compose up -d --build

Default endpoints:

  • Server: http://localhost:6001
  • Metrics: http://localhost:9601/metrics

Health checks:

Terminal
curl http://localhost:6001/up
curl http://localhost:6001/up/app-id
curl http://localhost:9601/metrics
Official Docker images are available on Docker Hub and GitHub Container Registry. Images are tagged with version numbers and latest for the most recent release.

Option 2: Cargo Binstall (Precompiled Binary)

Install precompiled binaries directly using cargo-binstall:

Terminal
# Install cargo-binstall if you don't have it
cargo install cargo-binstall

# Install sockudo
cargo binstall sockudo

# Run sockudo
sockudo

Or install with specific features:

Terminal
# Install with all features
cargo binstall sockudo --features full

# Install with specific features
cargo binstall sockudo --features redis,mysql
cargo-binstall downloads precompiled binaries when available, making installation much faster than compiling from source.

Option 3: Build From Source

Requirements:

  • Rust toolchain
  • (Optional) external services depending on enabled features (redis, nats, SQL backends)
Terminal
cd sockudo

# Local-only feature set (default)
cargo run --release

# Full feature build
cargo run --release --features full

Or install globally:

Terminal
# Install with default features
cargo install sockudo

# Install with all features
cargo install sockudo --features full

Build Feature Flags

sockudo supports compile-time features to trim dependencies:

  • local (default): in-memory only.
  • redis, redis-cluster, nats: horizontal adapters.
  • mysql, postgres, dynamodb, scylladb: app manager backends.
  • sqs, lambda: AWS queue/webhook integrations.
  • full: all optional backends enabled.

Config Loading Order

At startup, configuration is applied in this order:

  1. Internal defaults.
  2. config/config.json if present.
  3. --config file if passed.
  4. Environment variables (highest priority).

Custom config file:

Terminal
cargo run --release -- --config ./config/production.json

Next

Copyright © 2026