Server setup
Before you run the installer
- Patch the host:
sudo apt update && sudo apt upgrade -y - Confirm NTP is active (
timedatectl status) - Open 22, 80, 443 (and panel port if not behind 443) via UFW or your firewall
- Prefer SSH keys over password login
Bootstrap
Use the Install commands block at the bottom of this page or see Install commands.
After bootstrap:
sudo systemctl status panelze-engine→ activesudo cat /root/panelze-admin-login.txt→ first admin credentials- Open the panel URL in your browser
Wire Engine secrets
ENGINE_API_URL, ENGINE_INTERNAL_KEY, and ENGINE_API_SECRET in the panel .env must match the Engine config on the same node.
Next: Post-install checklist.
Install commands
One-liner (recommended)
Runs on Debian/Ubuntu as root or sudo. Equivalent to the Community installer via get.panelze.com.
curl -fsSL https://get.panelze.com | bash
Community (Freemium hosting panel)
First install on empty server. If /var/www/panelze already exists, the same command auto-switches to safe update (sites + DB preserved).
curl -fsSL https://raw.githubusercontent.com/coskunyunus1453/hostvim/main/deploy/host/install-community.sh | sudo bash
Safe update (Community)
Git pull + panel/frontend/engine + migrate only. Does not run migrate:fresh or wipe data/www.
curl -fsSL https://raw.githubusercontent.com/coskunyunus1453/hostvim/main/deploy/host/install-update-community.sh -o /tmp/panelze-update.sh && sudo bash /tmp/panelze-update.sh
Pro (licensed)
Replace hv_YOUR_KEY with the key from your purchase email or SaaS dashboard.
PANELZE_LICENSE_KEY="hv_YOUR_KEY" curl -fsSL https://raw.githubusercontent.com/coskunyunus1453/hostvim/main/deploy/host/install-pro.sh | sudo bash
Safe update (Pro)
Same as Community update; optional license key for Pro env.
curl -fsSL https://raw.githubusercontent.com/coskunyunus1453/hostvim/main/deploy/host/install-update-pro.sh -o /tmp/panelze-update.sh && PANELZE_LICENSE_KEY="hv_YOUR_KEY" sudo bash /tmp/panelze-update.sh
Remote install (git + bootstrap)
Clones into /var/www/panelze and executes deploy/bootstrap/install-production.sh.
curl -fsSL https://raw.githubusercontent.com/coskunyunus1453/hostvim/main/deploy/bootstrap/remote-install.sh | sudo bash
Manual (operator)
Use when you already have git access and want full control before running bootstrap.
sudo mkdir -p /var/www
sudo chown "$USER":"$USER" /var/www
git clone https://github.com/coskunyunus1453/hostvim.git /var/www/panelze
cd /var/www/panelze
git checkout main
sudo bash deploy/bootstrap/install-production.sh
Panel update (after git pull)
Composer, migrations, frontend build — does not rebuild Engine unless you do it separately.
cd /var/www/panelze
git fetch origin
git checkout main
git pull --ff-only origin main
sudo -E bash deploy/scripts/deploy-panel.sh
Rebuild Engine binary
Run when Go/engine code changed.
cd /var/www/panelze/engine
sudo go build -buildvcs=false -o /usr/local/bin/panelze-engine ./cmd/panelze-engine
sudo systemctl restart panelze-engine
Post-install repair
Fixes common MySQL credential drift, permissions, and service wiring after upgrades.
sudo panelze-post-install
First admin credentials
Written at the end of install.sh — change the password on first login.
sudo cat /root/panelze-admin-login.txt