Real-Time Market AnalyticsClickHouse Workshops

07 Build a live dashboard on your data

Run a containerised dashboard on your laptop against your own ClickHouse Cloud service, and watch the query time and rows scanned change as you filter.

Want to feel the speed? Run a small dashboard on your own laptop that queries the forex table in your ClickHouse Cloud service. It draws an interactive candlestick and volume chart, and every time you change a filter it shows the ClickHouse query time and how many rows were scanned — usually a few milliseconds. That's the whole point: change the pair, drag the date range, and the data comes back instantly.

Why Docker?

The app runs inside a Docker container with its own pinned Python, so it doesn't matter which Python — if any — you have installed. You only need Docker.

Step 1 — Install Docker

If you don't already have it, install Docker Desktop and start it. It includes the docker compose command you'll use below. Check it's running:

docker --version

Step 2 — Clone the repo

Clone the workshop repository and move into the dashboard folder:

git clone https://github.com/ClickHouse/ClickHouse_Demos.git
cd ClickHouse_Demos
cd "$(git rev-parse --show-toplevel)/workshop_public/RTA-mini-workshop/dashboard"

Step 3 — Add your connection details

Copy the template to a real .env file, then open it in any text editor and fill in your service's details:

cp .env.example .env
# now edit .env and fill in the values below

Find these in the Cloud console under Connect (left menu) → HTTPS:

VariableWhat to put
CLICKHOUSE_HOSTe.g. abc123.ap-southeast-1.aws.clickhouse.cloudno https://, no port
CLICKHOUSE_PORT8443
CLICKHOUSE_USERdefault
CLICKHOUSE_PASSWORDthe password you set when you created the service
CLICKHOUSE_DATABASEthe database holding forex (usually default)
CLICKHOUSE_SECUREtrue

Step 4 — Run it

Build and start the container. The first run downloads the base image and installs dependencies (a minute or two); after that it's instant.

docker compose up --build

When you see it listening on port 8000, open http://localhost:8000 in your browser. Stop it later with Ctrl-C.

What to try

Switch the currency pair, drag the date range, or hit a quick range button — each change re-queries ClickHouse and the badge in the top-right flashes the new query time and rows scanned. Narrow the range to a single pair and watch it drop to a few thousand rows and a handful of milliseconds — the sort key at work, exactly like module 4.7.

Not seeing data?

A red banner means the app can't reach ClickHouse. Re-check the values in .env — host with no https:// and no port, port 8443 — and make sure your forex table is loaded. Full setup notes and troubleshooting are in the dashboard's README.md.

On this page

Track your progress?

Optional. We email a link to confirm your address; progress records once you open it.

Partners: use your work email to unlock partner-exclusive workshops.