A modern web interface for managing and controlling your Blocky DNS server.
See the codeBlockyUI is a modern companion dashboard for your Blocky DNS server. It connects to an existing Blocky instance to display statistics, query DNS records, and much more.

See blocky-ui.example.yml for configuration options and examples.
Create a docker-compose.yml file alongside blocky-ui.yml:
services:
blocky-ui:
image: ghcr.io/gabeduartem/blocky-ui:latest # or for example `blocky-ui:1.5.0` if you prefer pinned versions
container_name: blocky-ui
restart: unless-stopped
depends_on:
- blocky
ports:
- 3000:3000
environment:
BLOCKY_UI_CONFIG: /config/blocky-ui.yml
volumes:
- ./blocky-ui.yml:/config/blocky-ui.yml
blocky:
image: spx01/blocky
container_name: blocky
hostname: blocky
restart: unless-stopped
volumes:
- ./blocky/config.yml:/app/config.yml
- /etc/localtime:/etc/localtime:ro
ports:
- 4000:4000
- 53:53/udp
Then visit http://localhost:3000 to access BlockyUI.
docker run -d \
-p 3000:3000 \
-e BLOCKY_UI_CONFIG=/config/blocky-ui.yml \
-v "$(pwd)/blocky-ui.yml:/config/blocky-ui.yml" \
ghcr.io/gabeduartem/blocky-ui:latest
BlockyUI offers analytics for statistics and historical query logs, also allowing you to go through blocked queries and search specific ones. These features are optional, and the dashboard adapts to what your Blocky instance supports.
See Blocky's statistics and query logging documentation to enable these features, and blocky-ui.yml for connection settings.
git clone https://github.com/gabeduartem/blocky-ui.git
cd blocky-ui
bun install
blocky-ui.yml for your setup:cp blocky-ui.example.yml blocky-ui.yml
cp .env.example .env
bun dev
Visit http://localhost:3000 to access BlockyUI.
Use bun run log-data --help to export a read-only MySQL snapshot and copy it into disposable MySQL, PostgreSQL, Timescale, SQLite, CSV or VictoriaLogs stores. See the data transfer guide for setup, timezone handling and format differences.
We welcome contributions! Whether it's bug fixes, new features, or documentation improvements, your input helps make BlockyUI better. Check out our Contributing Guide to get started.
TypeScript
98.6%
A modern web interface for managing and controlling your Blocky DNS server.
See the codeBlockyUI is a modern companion dashboard for your Blocky DNS server. It connects to an existing Blocky instance to display statistics, query DNS records, and much more.

See blocky-ui.example.yml for configuration options and examples.
Create a docker-compose.yml file alongside blocky-ui.yml:
services:
blocky-ui:
image: ghcr.io/gabeduartem/blocky-ui:latest # or for example `blocky-ui:1.5.0` if you prefer pinned versions
container_name: blocky-ui
restart: unless-stopped
depends_on:
- blocky
ports:
- 3000:3000
environment:
BLOCKY_UI_CONFIG: /config/blocky-ui.yml
volumes:
- ./blocky-ui.yml:/config/blocky-ui.yml
blocky:
image: spx01/blocky
container_name: blocky
hostname: blocky
restart: unless-stopped
volumes:
- ./blocky/config.yml:/app/config.yml
- /etc/localtime:/etc/localtime:ro
ports:
- 4000:4000
- 53:53/udp
Then visit http://localhost:3000 to access BlockyUI.
docker run -d \
-p 3000:3000 \
-e BLOCKY_UI_CONFIG=/config/blocky-ui.yml \
-v "$(pwd)/blocky-ui.yml:/config/blocky-ui.yml" \
ghcr.io/gabeduartem/blocky-ui:latest
BlockyUI offers analytics for statistics and historical query logs, also allowing you to go through blocked queries and search specific ones. These features are optional, and the dashboard adapts to what your Blocky instance supports.
See Blocky's statistics and query logging documentation to enable these features, and blocky-ui.yml for connection settings.
git clone https://github.com/gabeduartem/blocky-ui.git
cd blocky-ui
bun install
blocky-ui.yml for your setup:cp blocky-ui.example.yml blocky-ui.yml
cp .env.example .env
bun dev
Visit http://localhost:3000 to access BlockyUI.
Use bun run log-data --help to export a read-only MySQL snapshot and copy it into disposable MySQL, PostgreSQL, Timescale, SQLite, CSV or VictoriaLogs stores. See the data transfer guide for setup, timezone handling and format differences.
We welcome contributions! Whether it's bug fixes, new features, or documentation improvements, your input helps make BlockyUI better. Check out our Contributing Guide to get started.
TypeScript
98.6%