ClickHouse admin panel — query monitor and access management for single nodes, self-hosted clusters, and ClickHouse Cloud
36
stars
22
commits
TypeScript
primary language
Aug 1, 2026
updated
Chadmin is an administration panel for ClickHouse — a real-time dashboard for monitoring running queries, managing users and access, and operating ClickHouse Cloud services. It auto-detects whether you're running a single node, a self-hosted cluster, or ClickHouse Cloud, and adapts the UI and SQL accordingly.
The published image at bun4uk/chadmin bundles nginx + php-fpm + the built frontend in a single container. No clone, no build:
docker run -d \
--name chadmin \
-p 8080:80 \
-e CLICKHOUSE_HOST=clickhouse.example.com \
-e CLICKHOUSE_PORT=8123 \
-e CLICKHOUSE_USERNAME=default \
-e CLICKHOUSE_PASSWORD=secret \
bun4uk/chadmin:latest
Then open http://localhost:8080.
For ClickHouse Cloud, pass the API credentials instead — Cloud mode turns on automatically:
docker run -d \
--name chadmin \
-p 8080:80 \
-e CLICKHOUSE_CLOUD_KEY_ID=xxxxxxxx \
-e CLICKHOUSE_CLOUD_KEY_SECRET=yyyyyyyy \
bun4uk/chadmin:latest
See .env.example for the full list of supported environment variables. Available tags: latest, M.m.p (semver), M.m, M. Multi-arch images are published for linux/amd64 and linux/arm64.
If you prefer keeping the configuration in a file, mount an env file instead of passing individual -e flags:
docker run -d --name chadmin -p 8080:80 --env-file .env bun4uk/chadmin:latest
To upgrade to a newer version, pull the new tag and recreate the container:
docker pull bun4uk/chadmin:latest
docker rm -f chadmin
docker run -d --name chadmin -p 8080:80 --env-file .env bun4uk/chadmin:latest
Clone the repository:
git clone https://github.com/bun4uk/chadmin.git
cd chadmin
Create and configure the .env file:
cp .env.example .env
Edit .env and add your ClickHouse credentials. For ClickHouse Cloud, set CLICKHOUSE_CLOUD_KEY_ID and CLICKHOUSE_CLOUD_KEY_SECRET — Cloud mode turns on automatically when these are present. See .env.example for the full list.
Launch the project:
docker-compose up -d
Open http://localhost in your browser
Everything builds and runs through docker-compose. The frontend container runs npm install && npm run watch (Vite build in watch mode) and rebuilds assets into public/build/ on every file change — no host-side npm or composer needed.
There is no test suite and no separate lint step. TypeScript type-checking runs as part of the Vite build inside the frontend container.
docker-compose restart app
docker-compose exec app bin/console cache:clear
docker-compose exec app bin/console <command> # Symfony console
docker-compose run --rm composer install # composer
docker-compose exec frontend npm run build # one-shot production build
docker-compose down
docker-compose logs -f app
docker-compose logs -f nginx
docker-compose logs -f frontend
docker-compose down
rm -rf var/cache/* var/log/* public/build/*
docker-compose up -d
docker-compose exec app bin/console cache:clear
@clickhouse/click-uihighlight.js + sql-formatter for SQL displaysmi2/phpclickhouse for ClickHouse SQL queries/users) for inspecting and dropping ClickHouse users?warehouse=…&service=…)TypeScript
48.2%
PHP
40.0%
CSS
8.3%
Dockerfile
1.5%
Twig
1.1%
ClickHouse admin panel — query monitor and access management for single nodes, self-hosted clusters, and ClickHouse Cloud
36
stars
22
commits
TypeScript
primary language
Aug 1, 2026
updated
Chadmin is an administration panel for ClickHouse — a real-time dashboard for monitoring running queries, managing users and access, and operating ClickHouse Cloud services. It auto-detects whether you're running a single node, a self-hosted cluster, or ClickHouse Cloud, and adapts the UI and SQL accordingly.
The published image at bun4uk/chadmin bundles nginx + php-fpm + the built frontend in a single container. No clone, no build:
docker run -d \
--name chadmin \
-p 8080:80 \
-e CLICKHOUSE_HOST=clickhouse.example.com \
-e CLICKHOUSE_PORT=8123 \
-e CLICKHOUSE_USERNAME=default \
-e CLICKHOUSE_PASSWORD=secret \
bun4uk/chadmin:latest
Then open http://localhost:8080.
For ClickHouse Cloud, pass the API credentials instead — Cloud mode turns on automatically:
docker run -d \
--name chadmin \
-p 8080:80 \
-e CLICKHOUSE_CLOUD_KEY_ID=xxxxxxxx \
-e CLICKHOUSE_CLOUD_KEY_SECRET=yyyyyyyy \
bun4uk/chadmin:latest
See .env.example for the full list of supported environment variables. Available tags: latest, M.m.p (semver), M.m, M. Multi-arch images are published for linux/amd64 and linux/arm64.
If you prefer keeping the configuration in a file, mount an env file instead of passing individual -e flags:
docker run -d --name chadmin -p 8080:80 --env-file .env bun4uk/chadmin:latest
To upgrade to a newer version, pull the new tag and recreate the container:
docker pull bun4uk/chadmin:latest
docker rm -f chadmin
docker run -d --name chadmin -p 8080:80 --env-file .env bun4uk/chadmin:latest
Clone the repository:
git clone https://github.com/bun4uk/chadmin.git
cd chadmin
Create and configure the .env file:
cp .env.example .env
Edit .env and add your ClickHouse credentials. For ClickHouse Cloud, set CLICKHOUSE_CLOUD_KEY_ID and CLICKHOUSE_CLOUD_KEY_SECRET — Cloud mode turns on automatically when these are present. See .env.example for the full list.
Launch the project:
docker-compose up -d
Open http://localhost in your browser
Everything builds and runs through docker-compose. The frontend container runs npm install && npm run watch (Vite build in watch mode) and rebuilds assets into public/build/ on every file change — no host-side npm or composer needed.
There is no test suite and no separate lint step. TypeScript type-checking runs as part of the Vite build inside the frontend container.
docker-compose restart app
docker-compose exec app bin/console cache:clear
docker-compose exec app bin/console <command> # Symfony console
docker-compose run --rm composer install # composer
docker-compose exec frontend npm run build # one-shot production build
docker-compose down
docker-compose logs -f app
docker-compose logs -f nginx
docker-compose logs -f frontend
docker-compose down
rm -rf var/cache/* var/log/* public/build/*
docker-compose up -d
docker-compose exec app bin/console cache:clear
@clickhouse/click-uihighlight.js + sql-formatter for SQL displaysmi2/phpclickhouse for ClickHouse SQL queries/users) for inspecting and dropping ClickHouse users?warehouse=…&service=…)TypeScript
48.2%
PHP
40.0%
CSS
8.3%
Dockerfile
1.5%
Twig
1.1%