Getting Started

Installation

How to run SNI Router from Docker or build it from source.

Installation

Requirements

  • Docker 20.10+ (or Docker Engine with Compose v2)
  • A host with ports 443 (and optionally 80) reachable from the internet

No other runtime dependencies are required — the image contains HAProxy and the shell entrypoint.

Pull the published image

docker pull ghcr.io/circle-rd/sni-router:latest

The image is published to the GitHub Container Registry on every release and supports three architectures:

TagPlatforms
latestlinux/amd64, linux/arm64, linux/arm/v7
<sha>same, pinned to a specific commit

Build from source

git clone https://github.com/circle-rd/sni-router.git
cd sni-router
docker build -t sni-router .

The Dockerfile uses a two-stage build:

  1. Base imagehaproxy:3.3-alpine
  2. The entrypoint.sh script is copied in and made executable
  3. HAProxy runs as the unprivileged haproxy user

Verify the image

docker run --rm ghcr.io/circle-rd/sni-router:latest haproxy -v

Expected output includes the HAProxy version string, e.g.:

HAProxy version 3.3.x ...
Copyright © 2026