feat: Docker support — multi-arch GHCR images on release
Add CI workflow to build linux/amd64 + linux/arm64 images and push to ghcr.io/razvandimescu/numa on tag. Fix Dockerfile (missing benches/), bake container-aware config (API + proxy bind 0.0.0.0), add Docker section to README.
This commit is contained in:
23
README.md
23
README.md
@@ -27,6 +27,9 @@ yay -S numa-git
|
||||
# Windows — download from GitHub Releases
|
||||
# All platforms
|
||||
cargo install numa
|
||||
|
||||
# Docker
|
||||
docker run -d --name numa --network host ghcr.io/razvandimescu/numa
|
||||
```
|
||||
|
||||
```bash
|
||||
@@ -102,6 +105,26 @@ From Machine B: `curl http://api.numa` → proxied to Machine A's port 8000. Ena
|
||||
|
||||
**Hub mode**: run one instance with `bind_addr = "0.0.0.0:53"` and point other devices' DNS to it — they get ad blocking + `.numa` resolution without installing anything.
|
||||
|
||||
## Docker
|
||||
|
||||
```bash
|
||||
# Recommended — host networking (Linux)
|
||||
docker run -d --name numa --network host ghcr.io/razvandimescu/numa
|
||||
|
||||
# Port mapping (macOS/Windows Docker Desktop)
|
||||
docker run -d --name numa -p 53:53/udp -p 53:53/tcp -p 5380:5380 ghcr.io/razvandimescu/numa
|
||||
```
|
||||
|
||||
Dashboard at `http://localhost:5380`. The image binds the API and proxy to `0.0.0.0` by default. Override with a custom config:
|
||||
|
||||
```bash
|
||||
docker run -d --name numa --network host \
|
||||
-v /path/to/numa.toml:/root/.config/numa/numa.toml \
|
||||
ghcr.io/razvandimescu/numa
|
||||
```
|
||||
|
||||
Multi-arch: `linux/amd64` and `linux/arm64`.
|
||||
|
||||
## How It Compares
|
||||
|
||||
| | Pi-hole | AdGuard Home | Unbound | Numa |
|
||||
|
||||
Reference in New Issue
Block a user