Before you start
NuvoPanel takes over a whole server: it installs and manages the web server, PHP, databases, mail and DNS. Start from a fresh server or VPS with nothing else installed.
| Operating system | AlmaLinux 8, 9 or 10 (Rocky Linux is accepted too), or Ubuntu 22.04 LTS. Every release is tested end to end on AlmaLinux 8 and Ubuntu 22.04. |
|---|---|
| Memory | 2 GB RAM minimum, 4 GB recommended |
| Access | Root access over SSH |
| Host names | A host name for the panel, for example panel.example.com. If you install mail: one for the mail server (mail.example.com) and one for webmail (webmail.example.com). Point their DNS A records at the server before or soon after installing. |
Install
Connect to the server over SSH as root and run:
curl -fsSL https://nuvopanel.com/install.sh | bash
The installer downloads the latest release, checks its signature, and then asks a few questions:
- the panel domain (the address you will open the panel on),
- the administrator user name and e-mail address,
- where hosting accounts keep their website data,
- the mail server host name and the webmail address (or skip mail).
It shows a summary and waits for you to confirm before it changes anything. The installation then runs by itself and takes a few minutes.
Answering in advance
Every question can be given as an option, and --yes accepts the defaults for the rest. This is useful for scripted installs:
curl -fsSL https://nuvopanel.com/install.sh | bash -s -- \
--panel-domain panel.example.com \
--admin-user admin --admin-email you@example.com \
--mail-hostname mail.example.com --webmail-domain webmail.example.com \
--yes
| Option | What it does |
|---|---|
--panel-domain <name> | Host name of the panel |
--admin-user <name>, --admin-email <address> | The administrator account |
--data-dir <path> | Where hosting accounts' website data lives |
--mail-hostname <name>, --webmail-domain <name> | Mail server and webmail addresses |
--skip-mail, --skip-webmail | Install without the mail server, or without webmail |
--version <x.y.z> | Install a specific release instead of the latest |
--yes | Do not ask; accept the defaults |
First login
When the installer finishes it prints the panel addresses and the administrator's user name and password. The password is shown once and is not stored anywhere, so copy it before you close the terminal, and change it after your first login.
| Panel | Address | Who signs in |
|---|---|---|
| Admin panel | https://panel.example.com:2087 | The server owner and their staff |
| Client panel | https://panel.example.com:2083 | Resellers, hosting customers and their team members |
Until the panel domain's DNS points at the server, the panel uses a self-signed certificate and your browser will warn about it. A trusted certificate is issued once the name resolves.
From the admin panel, create a hosting plan, then your first hosting account. Each account is a real Linux user with its own home directory, disk quota and PHP process pool.
Trial and licence
A 14-day trial starts by itself when you install. It has every feature and needs no sign-up and no card.
To keep using the panel after the trial:
- Create an account in the customer portal and buy a licence — $8 a month or $80 a year per server, with no limit on hosting accounts.
- In the admin panel open System → License, paste the licence key (it looks like
NVP-XXXX-XXXX-XXXX-XXXX) and press Activate.
Nothing is reinstalled and nothing changes for your websites. One licence covers one server.
If a licence runs out, websites, mail and databases keep running. Only the panel is locked until the licence is renewed.
Updates
Releases are signed, and the panel verifies the signature before it installs anything. You can apply updates from System → Updates or let the panel apply them automatically. After an update the panel runs a health check; if the check fails, the update is rolled back by itself.
What changed in each release is listed in the changelog.
Moving accounts between servers
The Transfer Tool moves hosting accounts from one NuvoPanel server to another, also between AlmaLinux and Ubuntu. The old server keeps running and is never changed.
- On the old server open Accounts → Transfer Tool and choose Generate Transfer Key. Pick how long the new server may have access (1 to 30 days).
- On the new server open the Transfer Tool, choose Add source server, and paste the key and the old server's host name. The key works once and must be used within 24 hours.
- Pick the accounts and run the pre-check. It looks for clashing names, domains and databases, PHP versions and disk space, and changes nothing.
- Start the transfer. It runs in the background with live progress, and can be cancelled and retried.
- Right before you switch DNS, run the final sync. It copies only what changed since the first pass.
A transfer copies the account with its password, limits and plan, website files, MySQL and PostgreSQL databases, mail domains, mailboxes and their mail, DKIM keys, autoresponders, mailing lists, DNS zones, SSL certificates, cron jobs, FTP accounts, background programs and git repositories.
No root password or SSH key is handed over. The old server lists every key under Transfers from this server, where you can revoke access at any time.
Connecting a Git repository
Under Git → Connect repository a hosting account can connect a repository on GitHub, GitLab, Bitbucket or Gitea/Forgejo with just its URL and an access token. The token is stored encrypted and is never written into the website's folder.
- Link the repository to one of the account's websites, or to a folder.
- Use the Push, Pull and Deploy buttons, or run plain
git pushandgit pullin the account's terminal — no token to type. - Switch on auto-deploy to deploy on every push to the chosen branch.
- A default ignore list keeps files such as
.envandwp-config.phpout of the repository.
Billing systems
NuvoPanel includes a provisioning API for billing systems, and a ready-made WHMCS module with single sign-on. Create a token with the scope Provisioning (billing) on the API Tokens page and follow the API reference.
Getting help
If something does not work as described here, write to support@nuvopanel.com. It helps to include:
- the NuvoPanel version (shown under System → Updates) and the server's operating system,
- what you were doing and what happened instead,
- the exact error message, if there was one.
Never send passwords or licence keys by e-mail.