Guide menu
On this page

Docker

Run the panel as a container on a Windows, Linux or Mac computer instead of on the router.

Last updated Oct 15, 2026View as Markdown

Overview

With Docker, Nasnet Panel runs as a container on a computer or server on your network instead of on the router. Use it when you already run containers on a machine that stays on, or when your router can’t run containers. The image is ghcr.io/nasnet-community/nasnet-panel and runs on amd64, arm64 and arm/v7.

Before you start

  • The machine stays on while you use the panel, and can reach your routers over the network.
  • The routers run RouterOS v7.

Steps

Linux

  1. Install Docker Engine. On most distributions:

    curl -fsSL https://get.docker.com | sudo sh
  2. Start the panel:

    docker run -d \
      --name nasnet \
      -p 8080:80 \
      --restart unless-stopped \
      ghcr.io/nasnet-community/nasnet-panel:latest
  3. Open http://localhost:8080, or http://<machine-ip>:8080 from another device.

To put the panel straight on the host’s network, use host networking instead. Set PORT so it doesn’t take port 80:

docker run -d --name nasnet --network=host -e PORT=8080 \
  --restart unless-stopped ghcr.io/nasnet-community/nasnet-panel:latest

macOS

  1. Install Docker Desktop and start it. It works on Apple silicon and Intel Macs.

  2. In Terminal, start the panel:

    docker run -d \
      --name nasnet \
      -p 8080:80 \
      --restart unless-stopped \
      ghcr.io/nasnet-community/nasnet-panel:latest
  3. Open http://localhost:8080.

Windows

  1. Install Docker Desktop with the WSL 2 backend (the default), and start it.

  2. In PowerShell, start the panel:

    docker run -d --name nasnet -p 8080:80 --restart unless-stopped ghcr.io/nasnet-community/nasnet-panel:latest
  3. Open http://localhost:8080.

The first time, Windows Firewall may ask whether Docker can accept connections. Allow it on private networks if you want to open the panel from other devices.

Docker Compose

The same service as a compose.yaml, on any system:

services:
  nasnet:
    image: ghcr.io/nasnet-community/nasnet-panel:latest
    container_name: nasnet
    ports:
      - "8080:80"
    restart: unless-stopped

Start it with docker compose up -d.

Update or remove

To update, pull the new image and recreate the container:

docker pull ghcr.io/nasnet-community/nasnet-panel:latest
docker rm -f nasnet

Then run the same docker run command again. To remove the panel, run only docker rm -f nasnet.

Reference

Variable What it does Default
PORT Port the panel listens on inside the container. 80
HOST Address it binds to. 0.0.0.0

Pin a version by replacing latest with a release tag, for example ghcr.io/nasnet-community/nasnet-panel:0.1.6.

Troubleshooting

port is already allocated. Something else uses port 8080. Pick another host port, for example -p 8090:80, and open http://localhost:8090.

The panel opens but can’t reach the router. Check that the machine itself can reach the router, for example with ping 192.168.88.1. A VPN on the host can route the traffic elsewhere.

Cannot connect to the Docker daemon. Docker isn’t running. Start Docker Desktop, or run sudo systemctl start docker on Linux.