Skip to main content
Skip to main content

All in one

This comprehensive Docker image bundles all ClickStack components:

  • ClickHouse
  • HyperDX
  • OpenTelemetry (OTel) collector (exposing OTLP on ports 4317 and 4318)
  • MongoDB (for persistent application state)

This option includes authentication, enabling the persistence of dashboards, alerts, and saved searches across sessions and users.

Suitable for

  • Demos
  • Local testing of the full stack

Deployment steps


Deploy with Docker

The following will run an OpenTelemetry collector (on port 4317 and 4318) and the HyperDX UI (on port 8080).

Visit http://localhost:8080 to access the HyperDX UI.

Create a user, providing a username and password which meets the requirements.

On clicking Create data sources will be created for the integrated ClickHouse instance.

For an example of using an alternative ClickHouse instance, see "Create a ClickHouse Cloud connection".

Ingest data

To ingest data see "Ingesting data".

Persisting data and settings

To persist data and settings across restarts of the container, users can modify the above docker command to mount the paths /data/db, /var/lib/clickhouse and /var/log/clickhouse-server. For example:

Deploying to production

This option should not be deployed to production for the following reasons:

  • Non-persistent storage: All data is stored using the Docker native overlay filesystem. This setup does not support performance at scale, and data will be lost if the container is removed or restarted - unless users mount the required file paths.
  • Lack of component isolation: All components run within a single Docker container. This prevents independent scaling and monitoring and applies any cgroup limits globally to all processes. As a result, components may compete for CPU and memory.

Customizing ports

If you need to customize the application (8080) or API (8000) ports that HyperDX Local runs on, you'll need to modify the docker run command to forward the appropriate ports and set a few environment variables.

Customizing the OpenTelemetry ports can simply be changed by modifying the port forwarding flags. For example, replacing -p 4318:4318 with -p 4999:4318 to change the OpenTelemetry HTTP port to 4999.

Using ClickHouse Cloud

This distribution can be used with ClickHouse Cloud. While the local ClickHouse instance will still be deployed (and ignored), the OTel collector can be configured to use a ClickHouse Cloud instance by setting the environment variables CLICKHOUSE_ENDPOINT, CLICKHOUSE_USER and CLICKHOUSE_PASSWORD.

For example:

The CLICKHOUSE_ENDPOINT should be the ClickHouse Cloud HTTPS endpoint, including the port 8443 e.g. https://mxl4k3ul6a.us-east-2.aws.clickhouse.com:8443

On connecting to the HyperDX UI, navigate to Team Settings and create a connection to your ClickHouse Cloud service - followed by the required sources. For an example flow, see here.

Configuring the OpenTelemetry collector

The OTel collector configuration can be modified if required - see "Modifying configuration".