Install on a VPS
Before you begin
Section titled “Before you begin”Prepare the following:
| Requirement | Supported minimum |
|---|---|
| Operating system | Fresh Ubuntu LTS or Debian |
| Architecture | amd64 or arm64 |
| Access | root or a user with sudo |
| Network | Public IPv4 address |
| Memory | 1 GiB; 2 GiB recommended |
| Disk | 8 GiB total and at least 2 GiB free |
| DNS | One DuckDNS subdomain and account token |
| Public TCP ports | 80, 443 and 8443 |
Port 443 is used by Xray. The web portal uses HTTPS on 8443, while 80 is
used for certificate issuance and redirects. Provider-level firewalls must be
opened manually because their APIs differ and should not receive broad
credentials from a generic installer.
Installation
Section titled “Installation”-
Create the DuckDNS name. Sign in at duckdns.org, create one subdomain and copy the account token. Do not publish the token.
-
Prepare the VPS firewall. Allow inbound TCP traffic on ports
80,443and8443in the hosting provider control panel. -
Connect with SSH. Use the root account or a user that can run
sudo. -
Run the pinned installer. Copy this complete command into the VPS terminal:
Terminal window sudo apt-get update && sudo apt-get install -y curl ca-certificates git && sudo curl -fsSL https://raw.githubusercontent.com/drslid/NoxRouteNeo/v1.0.0-alpha.2/install.sh -o /tmp/noxrouteneo-install.sh && sudo env NOXROUTE_REF=v1.0.0-alpha.2 bash /tmp/noxrouteneo-install.sh -
Answer the installer prompts. Select the interface language, enter the DuckDNS name and paste its token. Token input is not echoed.
-
Wait for the strict health report. The installer configures Docker, pulls the versioned GHCR images, generates secrets, updates DuckDNS, obtains the certificate, initializes PostgreSQL and starts the complete stack.
-
Record the one-time credentials. The final output displays the admin URL, VPN endpoint, owner username and generated temporary password.
Expected addresses:
Admin URL: https://YOUR_DOMAIN.duckdns.org:8443VPN endpoint: YOUR_DOMAIN.duckdns.org:443Installer behavior
Section titled “Installer behavior”- Re-running a completed installation verifies it instead of deleting data.
- An interrupted empty installation can be resumed.
- Existing application containers or an initialized database are never erased automatically.
- Docker Engine is installed when it is missing on a supported system.
- The normal installation pulls prebuilt images and does not compile the application on the VPS.
Proceed to First sign-in.