Все в одном
Этот комплексный Docker-образ включает все компоненты ClickStack:
- ClickHouse
- HyperDX
- OpenTelemetry (OTel) collector (предоставляющий OTLP по портам
4317и4318) - MongoDB (для хранения состояния приложения)
Этот вариант поддерживает аутентификацию, что позволяет сохранять дашборды, оповещения и сохранённые поисковые запросы между сеансами и пользователями.
Подходит для
- демонстраций
- локального тестирования всего стека
Шаги развертывания
Развертывание с помощью Docker
Следующая команда запустит коллектор OpenTelemetry (на портах 4317 и 4318) и интерфейс HyperDX (на порту 8080).
Перейдите к интерфейсу HyperDX
Перейдите по адресу http://localhost:8080, чтобы получить доступ к интерфейсу HyperDX.
Создайте пользователя, указав имя пользователя и пароль, который соответствует требованиям.
После нажатия Create будут созданы источники данных для интегрированного экземпляра ClickHouse.

Пример использования альтернативного экземпляра ClickHouse смотрите в разделе «Создание подключения ClickHouse Cloud».
Приём данных
Инструкции по приёму данных смотрите в разделе «Приём данных».
Сохранение данных и настроек
Чтобы сохранять данные и настройки при перезапусках контейнера, пользователи могут изменить приведённую выше команду docker, чтобы смонтировать каталоги /data/db, /var/lib/clickhouse и /var/log/clickhouse-server. Например:
Развертывание в production‑среде
Этот вариант не следует использовать в production‑среде по следующим причинам:
- Неперсистентное хранилище: Все данные сохраняются с использованием нативной overlay‑файловой системы Docker. Такая конфигурация не обеспечивает масштабируемую производительность, а данные будут потеряны при удалении или перезапуске контейнера, если только вы не смонтируете необходимые пути в файловой системе.
- Отсутствие изоляции компонентов: Все компоненты запускаются внутри одного 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, а затем настройте необходимые источники. Пример последовательности действий см. здесь.
Настройка OTel collector
Конфигурацию OTel collector при необходимости можно изменить — см. раздел "Изменение конфигурации OTel collector".
Поддержка типа JSON
Поддержка типа JSON в ClickStack находится в статусе бета-версии. Хотя сам тип JSON готов к промышленной эксплуатации в ClickHouse 25.3+, его интеграция в ClickStack всё ещё активно разрабатывается и может иметь ограничения, изменяться в будущем или содержать ошибки.
Поддержка типа JSON в ClickStack доступна в статусе бета-версии, начиная с версии 2.0.4.
О преимуществах этого типа см. раздел Преимущества типа JSON.
Чтобы включить поддержку типа JSON, пользователи должны задать следующие переменные окружения:
OTEL_AGENT_FEATURE_GATE_ARG='--feature-gates=clickhouse.json'— включает поддержку в OTel collector, гарантируя, что схемы создаются с использованием типа JSON.BETA_CH_OTEL_JSON_SCHEMA_ENABLED=true— включает поддержку в приложении HyperDX, позволяя выполнять запросы к данным JSON.
Например: