Analytics cookies only (Google Analytics, PostHog). No ad networks, no cross-site tracking. See our privacy policy.
Self-host HyperDX (ClickStack)
updated Oct 2026deployed by usprices checked · Jul 2026Install verified on Ubuntu 26.04 · Oct 2026 · how we test
We earn commissions when you shop through the links below. Full disclosure →
An open-source observability UI on ClickHouse: search and correlate logs, metrics, traces and session replays in one place, schema-agnostic and OpenTelemetry-native, now the interface of ClickHouse's ClickStack. MIT-licensed; the all-in-one image bundles ClickHouse, HyperDX, an OpenTelemetry collector and MongoDB in one container.
Runs on a VPS from $12/mo (Kamatera 4GB, 4 GB RAM) · prices checked Sep 2026
Our recommendation
Pick HyperDX when you want one screen for logs, traces and session replays and are happy with ClickHouse underneath. It searches your telemetry the way Kibana searches Elasticsearch, correlates a trace with its logs and a user's session, and accepts OpenTelemetry out of the box. The all-in-one image runs ClickHouse, the HyperDX app, an OpenTelemetry collector (OTLP on 4317 and 4318) and MongoDB for application state in a single container, with sign-in so dashboards, alerts and saved searches persist. Our snippet is the ClickStack docs' persistent `docker run` with the image pinned to a release tag. We did not find an upstream RAM minimum, so our 2 GB floor is an estimate. SigNoz is the nearest catalog neighbour, also OpenTelemetry-native on ClickHouse; OpenObserve is a single Rust binary; Grafana with Loki is the pairing to pick if you already live in Grafana.
What you need
Any VPS with at least 2048 MB of RAM
A domain you control — most self-hosted setups need HTTPS in front of them
Paid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# HyperDX (ClickStack) — logs, metrics, traces and session replay on ClickHouse — the all-in-one image from the ClickStack docs, pinned to 2.42.0docker run -d --name hyperdx --restart unless-stopped \ -p 8080:8080 -p 4317:4317 -p 4318:4318 \ -v hyperdx_db:/data/db -v hyperdx_ch_data:/var/lib/clickhouse -v hyperdx_ch_logs:/var/log/clickhouse-server \ clickhouse/clickstack-all-in-one:2.42.0timeout 240 bash -c 'until curl -fsS http://localhost:8080/ >/dev/null; do sleep 5; done'# → http://SERVER_IP:8080 — create a user on the first visit; send OpenTelemetry data to ports 4317 (gRPC) and 4318 (HTTP)
The ClickStack all-in-one docs flag these before you keep the container:
non-negotiableThe docs say this image is for demos and local testing and that it should not be deployed to production: all components share one container, so they cannot be scaled or limited separately and compete for CPU and memory. They describe separate deployments for production; this snippet is the quick way to see HyperDX on your own data.
non-negotiableOn the first visit you create a user with a username and password that meet the requirements, and the data sources for the bundled ClickHouse are created for you. The docs name three paths to mount to survive restarts and recreation, /data/db, /var/lib/clickhouse and /var/log/clickhouse-server, and our snippet mounts a named volume on each. In three fresh runs of our check the container restarted itself between zero and eight times in its first minute while ClickHouse came up, then stayed healthy, so give it a few minutes before judging it.
non-negotiablePorts 4317 and 4318 take OpenTelemetry data from anything that can reach them, and 8080 is plain HTTP. Firewall the OTLP ports to your own hosts and put a TLS reverse proxy in front of the UI before using it outside a trusted network.
non-negotiableThe images are now published as clickhouse/clickstack-* (previously docker.hyperdx.io/hyperdx/*, which older tutorials still use); the docs' command follows latest and we pin an exact release tag. Tags also exist for a major version and a nightly build, so check the release notes before bumping.