Skip to main content
001 / A hosting panel on your own servers

Hosting
that’s measured.

One command installs the panel on your server. Every site starts with its own cache, its own PHP, its own certificate, and backups that are test-restored after every copy.

Free · Source available · On your servers

Simulation · a WordPress site under traffic

Cache: on
Cache
HIT
Site PHP
idle
Database
idle

An illustration, not a measurement. The real numbers are in section 03.

  • nginx
  • PHP 8.5
  • MariaDB
  • APCu
  • restic
  • Let’s Encrypt
  • WooCommerce
  • WordPress
  • Laravel
  • systemd
01 / Features

The control a tutorial won’t give you.

Eight things you usually set up by hand, one evening at a time. Here they are on from the first site.

  • Speed01

    A page cache that aims

    nginx serves pages without touching PHP. When you change a post or a price, only the pages that show it are purged.

  • Isolation02

    One PHP per site

    Separate system user, PHP and database. A compromised site cannot see the others.

  • Backups03

    Restores already tested

    Every copy goes, encrypted, where you choose, and is test-restored right after.

  • Staging04

    Try first, then measure

    A password-protected copy. A release slower than production is stopped.

  • HTTPS05

    Certificates that renew

    Let’s Encrypt, wildcards included, or your own certificates.

  • File06

    A real editor in the browser

    It knows the language, uploads by dragging, and lets you download binaries.

  • Database07

    The database, inside the panel

    Tables, data and SQL with the site’s own permissions only, no outside tools.

  • Access08

    Roles and two factors

    Administrators, operators on their own sites, read-only. 2FA required if you want.

02 / Ownership

Stop renting your own server.

  • A

    Source available

    Read every line that runs as root on your server. Change it if you need to.

  • B

    Yours to keep

    No licence to renew, no fee per server. If the project stopped, the panel would keep working.

  • C

    No middleman

    No account with us, no service in between. Backups go where you choose.

03 / Measurements

Measured, not promised.

Release v0.1.0 on a small VPS, under wrk: three runs per scenario, the mean shown here. The method and every single run are public.

Measurement results, by scenario
ScenarioRequests / sErrors
Cached page 500 connections9,7100
Cached page 1 connection6,3470
Static file 1 KB, 200 connections15,4780
Browser-like traffic mixed headers and links, 200 connections9,6410
Without cache PHP + database, 10 connections6.80
  • Server: 2 vCPU VPS · Ubuntu 26.04
  • Site: WooCommerce, the shop page
  • Load: wrk on the same server
  • Measured: 11 October 2026
  • The data ↗
  • The method ↗
04 / Installation

One command. Really.

  1. A freshly created Ubuntu 24.04 or 26.04 server, with root access.
  2. The command alongside. It checks the server before it touches anything.
  3. Open the one-time link, create the administrator, create the first site.
The installation guide
serverbash

curl -fsSL https://get.cloudground.it | sudo bash

[ok] server checked: Ubuntu, memory, disk, ports

[ok] release signature verified

[ok] nginx · PHP-FPM · MariaDB · restic installed

[ok] panel running on https://<ip>:8443

→ create the administrator: https://<ip>:8443/setup/…

Output shortened. The full log stays in /var/log/cloudground-install.log.

Free · No subscription

Switch on
your server.