The official ghcr.io/slyber-app/slyber-inspector:latest image is built on alpine:3.20, supports amd64 and arm64 architectures, and runs the /usr/local/bin/slyber_test binary as an unprivileged user 10001:10001 (slyber).
Option 1. Quick Start via docker run
Run the container with a single command:
JavaScript
docker pull ghcr.io/slyber-app/slyber-inspector:latest
docker rm -f slyber_test 2>/dev/null || true
PORT=8095; while (ss -ltn 2>/dev/null || lsof -iTCP -sTCP:LISTEN -P -n 2>/dev/null) | grep -q ":${PORT}\b"; do PORT=$((PORT+1)); done; \
docker run -d \
--name slyber_test \
--restart unless-stopped \
-p "${PORT}:8095" \
-e LISTEN_ADDR="0.0.0.0:8095" \
ghcr.io/slyber-app/slyber-inspector:latest && \
HOST_IP=$([ -n "${SSH_CONNECTION:-}" ] && curl -fsSL4 --max-time 2 ifconfig.me 2>/dev/null || echo 127.0.0.1) && \
echo "==> Open Slyber Inspector: http://${HOST_IP}:${PORT}"
Once started, the interface is immediately available in your browser at http://127.0.0.1:8095 (or http://<SERVER_IP>:8095).
Option 2. Running via Docker Compose
Create a docker-compose.yml file with the following configuration:
YAML
services:
slyber_test:
image: ghcr.io/slyber-app/slyber-inspector:latest
container_name: slyber_test
restart: unless-stopped
ports:
- "8095:8095"
environment:
LISTEN_ADDR: "0.0.0.0:8095"
Start the container in the background:
Bash
docker compose up -d
Container Environment Variables and Ports
| Parameter | Default Value | Description |
LISTEN_ADDR | 0.0.0.0:8095 | Internal address and port of the HTTP/WebSocket server inside the container |
Port 8095/tcp | 8095:8095 | Primary port for accessing the Slyber Inspector web interface |
Verifying, Updating, and Removing the Container
Viewing logs and checking the installed version inside the container:
Bash
docker logs -f slyber_test
docker exec slyber_test slyber_test --version
Updating the container to the latest version:
When using docker Compose:
Bash
docker compose pull
docker compose up -d
When using docker run:
JavaScript
docker pull ghcr.io/slyber-app/slyber-inspector:latest
docker rm -f slyber_test 2>/dev/null || true
PORT=8095; while (ss -ltn 2>/dev/null || lsof -iTCP -sTCP:LISTEN -P -n 2>/dev/null) | grep -q ":${PORT}\b"; do PORT=$((PORT+1)); done; \
docker run -d \
--name slyber_test \
--restart unless-stopped \
-p "${PORT}:8095" \
-e LISTEN_ADDR="0.0.0.0:8095" \
ghcr.io/slyber-app/slyber-inspector:latest && \
HOST_IP=$([ -n "${SSH_CONNECTION:-}" ] && curl -fsSL4 --max-time 2 ifconfig.me 2>/dev/null || echo 127.0.0.1) && \
echo "==> Open Slyber Inspector: http://${HOST_IP}:${PORT}"
Stopping and complete removal:
Via docker compose:
Bash
docker compose down --rmi all
Via docker CLI:
Bash
docker rm -f slyber_test
docker rmi ghcr.io/slyber-app/slyber-inspector:latest