Перейти к основному содержанию
Этот Docker-образ включает все компоненты ClickStack с открытым исходным кодом:
  • ClickHouse
  • HyperDX
  • коллектор OpenTelemetry (OTel) (с OTLP на портах 4317 и 4318)
  • MongoDB (для хранения постоянного состояния приложения)
Этот вариант включает аутентификацию, благодаря чему панели мониторинга, оповещения и сохранённые поиски сохраняются для разных сеансов и пользователей.

Подходит для

  • Демонстраций
  • Локального тестирования всего стека

Шаги развертывания


1

Развертывание с помощью Docker

Следующая команда запустит OpenTelemetry Collector (на портах 4317 и 4318) и интерфейс HyperDX (на порту 8080).
Обновление имени образаОбразы ClickStack теперь публикуются как clickhouse/clickstack-* (ранее — docker.hyperdx.io/hyperdx/*).
2

Перейдите в интерфейс HyperDX

Перейдите по адресу http://localhost:8080, чтобы открыть интерфейс HyperDX.Создайте пользователя, указав имя пользователя и пароль, соответствующие требованиям.После нажатия Create для встроенного экземпляра ClickHouse будут созданы источники данных.Пример использования другого экземпляра ClickHouse см. в разделе “Использование ClickHouse Cloud”.
3

Приём данных

Инструкции по приёму данных см. в разделе “Ингестия данных”.

Сохранение данных и настроек

Чтобы данные и настройки сохранялись после перезапуска контейнера, можно изменить приведённую выше команду docker и смонтировать пути /data/db, /var/lib/clickhouse и /var/log/clickhouse-server. Например:

Развертывание в продакшн

Этот вариант не следует развертывать в продакшн по следующим причинам:
  • Непостоянное хранилище: Все данные хранятся во встроенной в Docker файловой системе overlay. Такая конфигурация не обеспечивает производительность при масштабировании, а данные будут потеряны, если контейнер удалить или перезапустить, — если только пользователи не смонтируют необходимые файловые пути.
  • Отсутствие изоляции компонентов: Все компоненты работают в одном Docker-контейнере. Это не позволяет независимо масштабировать их и отслеживать их состояние, а любые ограничения cgroup применяются глобально ко всем процессам. В результате компоненты могут конкурировать за CPU и память.

Настройка портов

Если вам нужно изменить порты приложения (8080) или API (8000), на которых работает HyperDX Local, потребуется изменить команду docker run, чтобы пробросить нужные порты и задать несколько переменных окружения. Порты OpenTelemetry можно изменить, просто скорректировав флаги проброса портов. Например, замените -p 4318:4318 на -p 4999:4318, чтобы изменить HTTP-порт OpenTelemetry на 4999.

Использование ClickHouse Cloud

Этот дистрибутив можно использовать с ClickHouse Cloud. Хотя локальный экземпляр ClickHouse всё равно будет развернут (и проигнорирован), OTel collector можно настроить для работы с экземпляром ClickHouse Cloud, задав переменные окружения CLICKHOUSE_ENDPOINT, CLICKHOUSE_USER и CLICKHOUSE_PASSWORD. Например:
Значение CLICKHOUSE_ENDPOINT должно быть HTTPS-конечной точкой ClickHouse Cloud с указанием порта 8443, например https://mxl4k3ul6a.us-east-2.aws.clickhouse.com:8443 После входа в интерфейс HyperDX перейдите в Team Settings и создайте подключение к вашему сервису ClickHouse Cloud, а затем добавьте необходимые источники.

Настройка OpenTelemetry Collector

При необходимости конфигурацию OpenTelemetry Collector можно изменить — см. “Изменение конфигурации”.

Выбор схемы: Map или JSON

По умолчанию ClickStack хранит атрибуты в столбцах Map(LowCardinality(String), String). Это рекомендуемая схема для рабочих нагрузок обсервабилити. В сочетании с сериализацией Map по бакетам и текстовыми индексами по ключам и значениям в Map она обеспечивает точечные lookup-операции без накладных расходов на приём для каждого ключа, характерных для динамических подстолбцов JSON. Схема с типом JSON доступна в статусе бета для оценки на рабочих нагрузках с небольшим стабильным набором ключей атрибутов. Использовать её по умолчанию не рекомендуется. Полное сравнение и переменные окружения, необходимые для включения поддержки JSON, см. в разделе Map vs JSON type.
Последнее изменение 2 июля 2026 г.