P Persmon Cloud
Applications

Products running on the box

Each app is a Coolify resource built from a Git repository or a Docker Compose file. Coolify builds the image on the server, starts the containers on their own private network, and tells Traefik which hostname belongs to them.

Persmon HMS

Demo
hms.persmon.cloud

Multi-tenant hotel property-management system with point-of-sale. This is the public demo host, reseeded with fresh sample data every night at 03:30.

How it runs

Five containers: a web front end, an api, a dedicated postgres, a redis cache and a caddy sidecar that serves the built front end and proxies /api to the backend. Backed up nightly at 02:30.

webapipostgresrediscaddy

Ishasha Ops

Live tenant
operations.ishashajunctionhotel.com

The same HMS platform, deployed as an isolated instance for Ishasha Junction Hotel. Real bookings, real staff, real data — so it has its own database and its own 02:45 backup.

How it runs

Identical stack to the demo (web, api, postgres, redis, caddy) but a completely separate Coolify resource and Docker network. A bug on the demo cannot touch this tenant's data. The custom domain is a CNAME to persmon.cloud.

webapipostgresrediscaddy

Jasper OS

Private
me.persmon.cloud

Jasper's personal life dashboard — the one app on this server for a single person. Scheduled jobs run every 15 minutes; the database is backed up at 02:50.

How it runs

An app container plus its own db. Deploys are triggered by a webhook on push. Background jobs are fired by a host-side cron (jasper-os-cron.sh) rather than inside the container, so they survive redeploys.

apppostgreswebhook deploy

MHF Votes

Event · 2026
mhfvotes.pearl-insights.org

Public voting platform for the 1st National Sickle Cell Awards 2026. Isolated on purpose: its own auth service, its own gateway, its own database. Ballots are counted in every nightly backup log.

How it runs

Four containers: web, auth, an authgw that fronts the auth service, and db. Staff accounts, SMTP and secrets are managed by dedicated scripts on the host.

webauthauthgwpostgres

persmon-hello

Canary
hello.persmon.cloud

The first app ever deployed here and still the quickest health check: if hello answers, DNS, the firewall, Traefik, TLS and Coolify are all working.

How it runs

Auto-deploys on every push to the private persmon-hello repository through the Coolify GitHub App. One container, no database.

git push → deploy

Uganda Bookshop

Staging
no public domain yet

Next.js storefront for Uganda Bookshop, currently in staging. Catalogue and cover images were imported on 21 Sep; the storefront goes public once the domain is pointed here.

How it runs

A single Coolify application in its own project. Uses the self-hosted Supabase stack for auth and data.

next.jssupabase

OMS demo

Outside Coolify
internal only

An order-management demo started directly with Docker from ~/oms-build, refreshed by a cron job every 10 minutes. The only application container Coolify does not manage.

How it runs

Plain docker run — no Traefik labels, so it has no public hostname. Logs go to ~/oms-cron.log.

dockercron */10

Persmon Cloud (this site)

Static
persmon.cloud

The page you are reading. Static HTML served by nginx; edit the files and the site updates instantly with no rebuild.

How it runs

Coolify Docker-image resource persmon-dashboard (nginx:1.27-alpine) with ~/persmon-dashboard/site mounted read-only as the web root and a managed nginx.conf.

nginxstatic
Design rule

Why every product gets its own network

Live status Coolify