Installing BHPanel
BHPanel installs on a server running AlmaLinux 9, x86_64 or ARM64. A fresh install is best: the panel sets up the web server, PHP, databases, mail and DNS itself.
What you need
| Minimum | Recommended | |
|---|---|---|
| Light | 1 vCPU, 2 GB RAM, 20 GB disk | 2 vCPU, 4 GB RAM, 40 GB disk |
| Full | 2 vCPU, 4 GB RAM, 30 GB disk | 4 vCPU, 8 GB RAM, 60 GB disk |
The disk is mostly for your customers: a Light install itself uses about 5 GB with the operating system. If the server has no swap, the installer adds swap the size of its RAM, so a 2 GB server copes with a memory spike instead of stopping something. (A container VPS gets its swap from the host.)
- A server with AlmaLinux 9 and
root, or a user who can usesudo. - Your free licence key from BiswasHost (optional at first: without one the panel works fully for 14 days).
- The BHPanel release, unpacked on the server. [Download link goes here.]
Light or Full
| Light | Full | |
|---|---|---|
| Web server | Nginx + Apache (or OpenLiteSpeed) | the same |
| PHP | one version | every version, 5.6 to 8.x |
| Databases | MariaDB, phpMyAdmin | + PostgreSQL, MongoDB |
| Postfix, Dovecot, Rspamd, Roundcube | the same | |
| Also | DNS, FTP, Redis, Memcached, firewall, scanners | + Node.js |
Not sure? Choose Light. Every component in Full has an install button on the panel's Services page later, and it runs the same step the installer would.
Install
From the folder where you unpacked the release, as a sudo user:
sudo BHP_LICENCE=BHP-XXXXX-XXXXX-XXXXX-XXXXX installer/bhpanel-install.sh all --light
For Full, use --full instead of --light. Without either, the installer asks.
Put BHP_LICENCE=... after sudo: written before it, sudo drops it. As
root, leave sudo out. You can also pass the key as --licence=KEY, but then
it shows in the process list while the installer runs.
Options
| Option | What it does |
|---|---|
--light |
Everything needed to run WordPress and PHP sites. |
--full |
Light plus every PHP version, PostgreSQL, MongoDB and Node.js. |
--stack=ols |
OpenLiteSpeed instead of Nginx + Apache (the default). |
--admin-user NAME |
The first administrator's name (default bhpadmin). |
--licence=KEY |
The licence key (or BHP_LICENCE=KEY). |
-y |
Ask nothing; take Light if no profile was given. |
If it stops for disk quota
Each account's disk limit is enforced by the kernel's disk quota. On some servers quota needs a change and a reboot first. The installer stops, says exactly which change your server needs, and never reboots on its own. Make the change, reboot, and run the same command again: it carries on where it stopped.
When it finishes
The installer prints a one-time token. Open the admin panel in your browser and use the token to set the administrator's password.
- Administrator and resellers:
https://your-server:2087 - Customers:
https://your-server:2083
Turn on two-factor sign-in for the administrator straight away.
Checking where it stands
sudo installer/bhpanel-install.sh status
It reports what is done and what is not, and changes nothing.