Skip to content
Setup serviceBook a free call
Get started

Running on your own server in minutes.

PNLCS is a Laravel application: PHP 8.4, MySQL or MariaDB and a web server. Pick the way that suits your server. To look around first, the live demo is a real installation.

Three ways to install

Each one ends at the same install wizard, where you create your administrator account.

The official image

panelica/pnlcs-runtime carries PHP-FPM 8.4, nginx and supervisor. On its first start it installs the newest stable release, a signed package checked before it is unpacked.

  • The first start takes about a minute
  • The scheduler and a queue worker run inside the container: no cron line to add
  • Two named volumes keep the database and the application when the container is replaced
Docker guide
Terminal
$ docker network create pnlcs-net

$ docker run -d --name pnlcs-db --network pnlcs-net \
  -v pnlcs_db:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=choose-a-root-password \
  -e MYSQL_DATABASE=pnlcs -e MYSQL_USER=pnlcs \
  -e MYSQL_PASSWORD=choose-a-password \
  mariadb:11

$ docker run -d --name pnlcs --network pnlcs-net -p 8090:80 \
  -v pnlcs_app:/var/www/pnlcs \
  -e DB_HOST=pnlcs-db -e DB_DATABASE=pnlcs \
  -e DB_USERNAME=pnlcs -e DB_PASSWORD=choose-a-password \
  -e APP_URL=http://localhost:8090 \
  panelica/pnlcs-runtime:1.5

# then open http://localhost:8090/install

Tested on fresh servers

The installer and the step-by-step guide were run from the first command to the first sign-in on each of these systems.

Ubuntu 22.04 · 24.04PHP 8.4 (ondrej PPA)MySQL 8.0
Debian 12 · 13PHP 8.4 (sury · Debian)MariaDB 10.11 · 11.8
AlmaLinux 9PHP 8.4 (Remi)MySQL 8.0 · SELinux on
Rocky Linux 9PHP 8.4 (Remi)MySQL 8.0 · SELinux on

Then the install wizard

Open /install in the browser. It checks everything first and closes itself for good when it is done: there is no default password to change afterwards.

  1. 1RequirementsPHP 8.4, every extension and every folder that must be writable. A red line names exactly what to fix.
  2. 2DatabaseCreates the tables, or skips this when the migrations have already run.
  3. 3AdministratorThe username, email and password you choose.
  4. 4ApplicationThe public address, the name of your company and the default language.
  5. 5FinishA lock file is written and /install answers 404 from then on.

Requirements

A small installation is comfortable on 2 GB of memory with the database on the same server.

PHP
8.4 or newer
Database
MySQL 8.0, or MariaDB 10.6 or newer
Web server
Nginx or Apache, with PHP-FPM
Node.js
20.19 or newer, only to build the frontend from source
Composer
2.x, not needed with the release package
Memory
1 GB for a small install, 2 GB is comfortable
Disk
About 130 MB for the application; leave 2 GB free as data grows

Updates are one click

PNLCS checks for a new release once a day. Nothing is installed until an administrator asks for it.

Signed and checked firstThe release is downloaded, its signature verified and compared with your installation before anything changes.
Your changes are keptEdits to PNLCS's own files are merged with the new version. Your themes, modules, hooks and .env are never touched.
Put back if anything failsThe database is snapshotted first. If a step fails, every file and the database go back as they were.
Stable or BetaBeta gets new releases about a week earlier, for operators who want them first.

After installing

The documentation walks you from the first sign-in to the first paid order.

Paid service from the PNLCS developers

Starting your own hosting company?

PNLCS is free to run yourself. If you want it done for you, the developers who build PNLCS set up the servers, the control panel, billing and your storefront. The first call is free.