Start Command

Start all NexoralDNS services that have been previously installed. Use this command to resume services after they've been stopped.

Command

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

What It Does

The start command reactivates all NexoralDNS services that are currently stopped. It performs the following operations:

Start Process:

  • Verifies NexoralDNS is installed on the system
  • Checks Docker and Docker Compose are available
  • Navigates to the NexoralDNS installation directory
  • Starts all Docker containers in detached mode
  • Restores DNS configuration to use NexoralDNS
  • Verifies all services are running properly
  • Displays service status and access information

When to Use

Use the start command in these scenarios:

After Stopping Services

If you previously ran the stop command to halt services, use start to resume them.

After System Reboot

If your system rebooted and containers are not configured for auto-restart, use this command to bring services back online.

Auto-Start on Boot:

By default, Docker containers are configured with restart: unless-stopped policy. This means they automatically start after system reboots unless explicitly stopped with the stop command.

After Network Changes

If you've made network configuration changes and need to restart DNS services.

Maintenance Recovery

After performing system maintenance or updates that required stopping services.

Expected Output

When services start successfully, you'll see output similar to:

[✓] NexoralDNS installation found
[✓] Docker is running
[✓] Starting services...

Creating network "nexoraldns_default" (if not exists)
Starting nexoraldns-dns-server ... done
Starting nexoraldns-cache       ... done
Starting nexoraldns-dashboard   ... done

[✓] All services started successfully
[✓] DNS configuration restored

Services Status:
  DNS Server:     Running (Port 53)
  Cache Manager:  Running
  Web Dashboard:  Running (Port 4000)

Access dashboard at: http://localhost:4000

Verifying Services

Check Container Status

Verify all containers are running:

sudo docker compose ps

All services should show status as Up:

NAME                       STATUS    PORTS
nexoraldns-dns-server      Up        0.0.0.0:53->53/udp
nexoraldns-cache           Up
nexoraldns-dashboard       Up        0.0.0.0:4000->4000/tcp

Test DNS Resolution

Ensure DNS queries are being resolved:

dig @localhost google.com

Access Web Dashboard

Open your browser and navigate to:

http://localhost:4000

Alternative Start Methods

Using Docker Compose Directly

If you prefer to use Docker Compose commands directly:

cd /path/to/NexoralDNS/Scripts\nsudo docker compose up -d

Start Specific Service

To start only a specific service:

cd /path/to/NexoralDNS/Scripts\nsudo docker compose up -d dns-server

Troubleshooting

Services Fail to Start

Check Docker is running:

sudo systemctl status docker

If Docker is not running:

sudo systemctl start docker

Port Conflicts

Problem: Port 53 or 4000 is already in use.

Check what's using the port:

sudo netstat -tulpn | grep :53\nsudo netstat -tulpn | grep :4000

Stop conflicting services:

# For systemd-resolved on port 53\nsudo systemctl stop systemd-resolved

Containers Start But Exit Immediately

View container logs:

sudo docker compose logs

Look for error messages that indicate configuration issues or missing dependencies.

DNS Not Working After Start

Verify DNS configuration:

cat /etc/resolv.conf

Should contain:

nameserver 127.0.0.1

Cannot Access Dashboard

Check dashboard container logs:

sudo docker compose logs dashboard

Verify port binding:

sudo docker port nexoraldns-dashboard

Still Having Issues?

If services fail to start after troubleshooting, try stopping all services completely and starting fresh. See the stop command documentation, then attempt to start again. If problems persist, check the troubleshooting guide.

Related Commands