PanelConfig
Installer

From bare server to hosting panel in one command.

The installer verifies requirements before anything changes, configures the full stack, creates your owner account, and locks the installation against accidental re-runs.

$ bash <(curl -sSL https://install.panelconfig.com/latest.sh)
Ubuntu LTS & Debian stable Checks run before changes Locks when complete
How it runs

Five stages, in order, every time.

Verify

OS, PHP, extensions, memory, disk, and storage permissions are checked. A failure stops here and changes nothing.

Provision

Web server, PHP-FPM, database server, and mail components are installed and configured.

Schema

The database is created and the full schema with migrations is imported.

Owner

Your first login becomes the owner account with full administrative rights.

Lock

storage/install.lock plus a database setting refuse any future accidental reinstall.

Requirements

What the server needs before you start.

Operating system

A fresh, 64-bit Ubuntu LTS or Debian stable server. A clean server is strongly recommended.

Resources

2 GB RAM minimum (4 GB recommended for busy servers) and 20 GB of free disk space.

Runtime

PHP 8.1+ with pdo_mysql, curl, openssl, and json — installed for you if missing.

Hostname

A DNS hostname pointed at the server, used for panel access and SSL issuance.

Network

Outbound HTTPS access for package and release downloads during installation.

Access

Root or sudo access on the server. The installer never asks for credentials over the web.

Safe by default

Checks pass before anything changes.

Every requirement is verified first. If a check fails, the installer stops with a clear message and changes nothing. On success, it walks the stages in order and reports each one.

  • Idempotent checks: re-running the verification stage is always safe
  • Installation lock: completed installs refuse re-runs to protect live data
  • Clear logging: every stage prints what it did and where
installer
bash <(curl -sSL https://install.panelconfig.com/latest.sh)
OS check Ubuntu 24.04 LTS
PHP & extensions
database server
web server configured
schema installed · administrator created
installation locked storage/install.lock
Panel ready at https://your-hostname/app/auth/login.php
Advanced

Installer options.

Flags can be appended to the install command for non-default setups.

# Set the panel hostname up front
bash <(curl -sSL https://install.panelconfig.com/latest.sh) --hostname panel.example.com
# Use an existing database server
bash <(curl -sSL https://install.panelconfig.com/latest.sh) --db-host 10.0.0.5 --db-user pc_app
# Run checks only, change nothing
bash <(curl -sSL https://install.panelconfig.com/latest.sh) --check-only
# Verify lock state after install
pc lock:status
Questions

Installation FAQs.

What does the installer change on my server?

The installer places PanelConfig under its own directory, configures the web server virtual host, prepares the database schema, creates the first administrator, and writes an installation lock. Every step is logged and shown at the end of the run.

Can I re-run the installer?

A completed installation writes a lock. Repair mode can be run intentionally from PCCLI, which verifies files, permissions, services, and schema without overwriting your data.

Which operating systems are supported?

Current Ubuntu LTS and Debian stable releases are the supported targets. The installer checks the OS, PHP version, and required extensions before making any change.

Ready when your server is.

Point a hostname at a fresh Ubuntu or Debian server and run the command above. The first login is your administrator account.

Read the documentation