Установка Slyber Inspector в Docker

Обновлено:

Официальный образ ghcr.io/slyber-app/slyber-inspector:latest собран на базе alpine:3.20, поддерживает архитектуры amd64 и arm64 и запускает бинарный файл /usr/local/bin/slyber_test от непривилегированного пользователя 10001:10001 (slyber).

Вариант 1. Быстрый запуск через 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}"

После запуска интерфейс сразу доступен в браузере по адресу http://127.0.0.1:8095 (или http://<IP_СЕРВЕРА>:8095).

Вариант 2. Запуск через Docker Compose

Создайте файл docker-compose.yml со следующей конфигурацией:

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"

Запустите контейнер в фоновом режиме:

Bash
docker compose up -d

Параметры окружения и порты контейнера

ПараметрЗначение по умолчаниюОписание
LISTEN_ADDR0.0.0.0:8095Внутренний адрес и порт HTTP/WebSocket сервера внутри контейнера
Порт 8095/tcp8095:8095Основной порт для доступа к веб-интерфейсу Slyber Inspector

Проверка, обновление и удаление контейнера

Просмотр логов и проверка установленной версии внутри контейнера:

Bash
docker logs -f slyber_test
docker exec slyber_test slyber_test --version

Обновление контейнера до последней версии:

При использовании docker Compose:

Bash
docker compose pull
docker compose up -d

При использовании 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}"

Остановка и полное удаление:

Через docker compose:

Bash
docker compose down --rmi all

Через docker CLI:

Bash
docker rm -f slyber_test
docker rmi ghcr.io/slyber-app/slyber-inspector:latest