e20e235a1e
scripts/deploy.sh covers the full path from fresh OS to running service: 1. install system packages (apt/yum/dnf auto-detect, includes bind/python3/venv/git) 2. create Python venv + pip install -r requirements.txt (avoids PEP 668) 3. init SQLite DB (default admin/admin) 4. delegate BIND config to setup-bind.sh (or --skip-bind) 5. install + enable systemd unit dns-web (gunicorn, port 5300) 6. restart + verify (port listen + HTTP 302) Idempotent; supports --dry-run, --skip-bind, --port, DNS_WEB_PORT/USER/WORKERS. Type=exec (not Type=notify) because gunicorn 21.x has no sd_notify. README updated with deploy.sh as recommended path; .gitignore adds venv/.