Get Started/Installation
v7.27.75
Get Started

Installation

Everything you need to install NexoralDNS — automated and manual paths, system requirements, service management, and verification.

Quick installation

A single command installs Docker, downloads the latest images, and starts every service.

install
$ curl -fsSL https://raw.githubusercontent.com/nexoral/NexoralDNS/main/Scripts/install.sh | sudo bash -

What the installer does

✓Installs Docker and Docker Compose if not present
✓Downloads the latest NexoralDNS images
✓Configures system DNS settings
✓Starts all NexoralDNS services
✓Sets up the web dashboard on port 4000

System requirements

RequirementSpecification
OSLinux Debian/Ubuntu (recommended)
MemoryMinimum 1GB RAM (2GB+ recommended)
StorageMinimum 4GB free space
NetworkLAN connectivity — NOT cloud/public
PrivilegesAdministrator / root access
Ports (external)53 UDP/TCP (DNS), 853 TCP (DNS over TLS), 4000 TCP (Web Dashboard)
Ports (internal)27017 TCP (MongoDB), 6379 TCP (Redis) — LAN/container only, not exposed publicly

Manual installation

1

Clone the repository

bash
git clone https://github.com/nexoral/NexoralDNS.git
cd NexoralDNS
2

Start containers

bash
cd Scripts
sudo docker compose up -d
3

Verify installation

All services should show status "Up".

bash
$ sudo docker compose ps

Post-installation setup

1

Access the web interface

Open http://localhost:4000 in your browser.

2

Initial login

Sign in with the default credentials.

▸Username — admin
▸Password — admin
3

Activate the service

Enter an activation key from the cloud platform. The free tier is activated automatically if no key is provided.

4

Configure your router

Find the machine's local IP and set it as Primary DNS in your router's DHCP/DNS settings.

5

Reserve a static IP

Reserve the IP in router settings to prevent DNS interruption.

⚠️
Change the default password
Change the default password immediately after first login — go to Settings → Change Password.

Service management

start services
$ nexoraldns start
stop services
$ nexoraldns stop
update services
$ nexoraldns update
self-update CLI package
$ nexoraldns pack
remove (irreversible)
$ nexoraldns remove

Verification

test resolution
dig @192.168.1.100 google.com        # Linux/Mac
nslookup google.com 192.168.1.100    # Windows
check status
$ sudo docker compose ps
view logs
sudo docker compose logs -f
sudo docker compose logs -f dns-server
Next steps