- store records in SQLite via built-in node:sqlite, no native deps - wrap DB reads in await io() so they stay out of the static shell - add CRUD pages backed by Server Actions with per-request data - generate managed config and restart container via Docker socket - add /resolve page to query dnsmasq for A and CNAME records - add Dockerfile and compose setup with shared config volume
20 lines
861 B
Bash
20 lines
861 B
Bash
# Copy to .env.local and adjust for your setup. Every value is optional — the app falls back
|
|
# to local paths under ./data so it runs with no configuration at all.
|
|
|
|
# SQLite database — the single source of truth for records. Docker: /data/dnsmasq-admin.db
|
|
DNSMASQ_ADMIN_DB_PATH=./data/dnsmasq-admin.db
|
|
|
|
# Managed dnsmasq config file this app regenerates on every apply.
|
|
# Docker: /etc/dnsmasq.d/dnsmasq-admin.conf
|
|
DNSMASQ_ADMIN_CONF_PATH=./data/dnsmasq-admin.conf
|
|
|
|
# Container restarted over the Docker socket after an apply.
|
|
DNSMASQ_CONTAINER_NAME=dnsmasq
|
|
|
|
# Docker socket. If it is missing (e.g. developing on Windows), the restart is skipped and
|
|
# reported in the UI rather than failing.
|
|
DNSMASQ_ADMIN_DOCKER_SOCKET=/var/run/docker.sock
|
|
|
|
# DNS server used by the /resolve page. Point this at your dnsmasq container or LAN IP.
|
|
DNSMASQ_SERVER_IP=127.0.0.1
|