v2.2.5 · latest stable · free

One command. A few minutes. A working host.

The installer sets up the entire stack — web server, PHP, database, mail, DNS and SSL — and hands you a panel with a trusted padlock already on it.

# run as root on a FRESH server wget https://www.webdeckpanel.co.uk/downloads/webdeck-installer.tar.gz tar xzf webdeck-installer.tar.gz cd webdeck-installer-pkg && bash install.sh

Free for VM6 clients · 7-day free trial on any other host · No card required

Before you start

What you need

A fresh server and about five minutes. That's genuinely it.

🐧

A supported OS

  • Debian 11, 12, 13
  • Ubuntu 20.04, 22.04, 24.04
  • Rocky Linux 8, 9, 10
  • AlmaLinux 8, 9, 10
  • RHEL 8, 9
💻

A fresh server

  • Minimum: 1 vCPU, 1 GB RAM, 10 GB disk
  • Recommended: 2 vCPU, 4 GB RAM, 40 GB SSD
  • Root access
  • A public IPv4 address
⚠️

A clean server

WebDeck installs and configures Apache/nginx, Postfix, Dovecot, MariaDB and PowerDNS. It expects to own that stack.

  • Don't install it over an existing stack
  • Use a fresh VPS — they're cheap
Install

Step by step

1. Download and run the installer

SSH into your fresh server as root and run:

wget https://www.webdeckpanel.co.uk/downloads/webdeck-installer.tar.gz tar xzf webdeck-installer.tar.gz cd webdeck-installer-pkg bash install.sh

It takes a few minutes — it's installing a complete hosting stack. You'll see each step as it completes.

2. Open the panel

When it finishes, the installer prints your server's free hostname:

https://srv-a1b2c3.wd-server.co.uk:2087

Use that address — it has a browser-trusted certificate, so you get a padlock and no warnings. The raw IP works too, but shows a self-signed certificate warning.

3. Run the setup wizard

Six steps, no config files: licence (or start your free trial) → admin account → nameservers → web server → mail → done.

Keep the MySQL root password. The installer prints it and saves it to /opt/vm6panel/.env. Put it somewhere safe.
Also available

The WHMCS module

Provision accounts automatically the moment an order is paid. Free, like the panel.

💳

WebDeck WHMCS module v2.0

Create, suspend, upgrade and terminate accounts automatically. Usage sync and one-click client login included.

Download Details
Troubleshooting

If something goes wrong

The installer failed partway through

Check /var/log/webdeck-install.log — it records every step. The most common causes are a server that isn't fresh (something already using port 80, 443 or 3306), or a package mirror being unreachable. Send us the log and we'll tell you what happened.

I can't reach the panel after installing

Check the panel is running (systemctl status vm6panel) and that port 2087 is open — both in the server's firewall and at your VPS provider, which often has its own firewall in front of the box.

The browser says the connection isn't private

You're probably on the raw IP, which uses a self-signed certificate. Use the free hostname the installer gave you instead — that one has a proper trusted certificate.

Can I install it on a server that's already running sites?

Please don't. WebDeck configures the whole stack and will conflict with an existing one. Use a fresh server and migrate the sites across with the cPanel importer or a backup restore.

Full troubleshooting guide
Changelog

What's new

2.2.5 — latest stable

2.2.5 adds a secondary nameserver cluster: run one command on a second machine and it installs PowerDNS, configures itself as a secondary of your panel and starts pulling every zone. Your customers' DNS keeps answering even if the main box is offline, and the new nameserver is added to your zones' NS records automatically once it's confirmed serving. Earlier in the 2.2 line, 2.2.0 gave every website its own isolated PHP environment — its own version, extensions, php.ini settings and kernel-enforced CPU/RAM limits. It's the per-tenant isolation people buy CloudLinux for, built in.

See the full release notes for every version and what changed.

2.0.7 — Notification bell, mobile menu fix

Notification bell. A bell in the header, on desktop and mobile, with an unread count. See recent alerts — services down or auto-healed, backups, low disk space, security, updates — whether or not email notifications are set up. Customers get their own bell for alerts about their own sites.

Mobile menu now scrolls properly. Previously anything below the first few items was unreachable, and dragging on the menu moved the page behind it instead.

Other improvements. Settings tabs are easier to swipe on mobile, and the menu closes with Escape.

2.0.6 — Email notifications, 53 apps, security hardening

Email notifications. Get emailed when a service goes down or is auto-healed, when backups complete or fail, on low disk space, security events, panel updates and new accounts. A Notifications tab in Settings gives you a toggle for each alert; your customers get their own toggles for alerts about their own sites. Works out of the box via the local mail server, with an optional SMTP relay for reliable delivery.

53 one-click apps, up from 48 — Typecho, Grav, YOURLS, LinkAce and Chamilo.

phpMyAdmin single sign-on now logs you straight in, and the session token no longer travels in the URL.

Security hardening — replay-protected two-factor, password-gated 2FA setup, signed and self-healing updates, and safer storage of database passwords.

2.0.1 — Account isolation, service logs, 48 apps

Account isolation. Every new SFTP/SSH account is automatically confined to its own website's files and can't see other customers. Resource limits stop one customer hogging the box, and an optional process cage hides other tenants' processes. A new Isolation page shows every account's status. No CloudLinux licence needed.

Service logs in the panel. Live Apache, MariaDB, PHP, mail, DNS and FTP logs — no SSH needed — plus a self-heal activity feed on the dashboard.

48 one-click apps, up from 38 — Joomla, phpBB, Flarum, Mautic, EspoCRM, LimeSurvey, phpMyFAQ, Concrete CMS, Chevereto and Pydio Cells.

Cross-platform fixes. Websites configure correctly on Rocky/AlmaLinux, PowerDNS starts reliably under SELinux, PHP versions and ionCube work everywhere.

Security hardening and a more resilient installer.

1.11.50 — 38 one-click apps, 65 PHP modules, installer fixes

Thirteen more apps — 38 in total. osTicket, GLPI, SuiteCRM, Dolibarr, Invoice Ninja, Akaunting, Firefly III, Kimai, Snipe-IT, Monica, wallabag, Shaarli, Pico, Bludit, HumHub and Piwigo.

Composer is now included, so apps that ship as source (Snipe-IT, Kimai, HumHub, Monica, Invoice Ninja) get their dependencies installed and actually run.

Fixed .zip extraction — apps shipping as a .zip previously failed to install. Matomo and OpenCart were also unpacking to the wrong place. Both fixed.

65 PHP modules, up from 46.

All release notes

Stuck? We'd rather you asked.

Installation problems, bugs, or something that just doesn't make sense — tell us and it gets fixed.