P Persmon Cloud
Platform

What everything else stands on

These services are not products — they are the machinery that builds, routes, stores and secures the products. If one of these is unhealthy, several apps are.

Coolify

Control plane
coolify.persmon.cloud

Self-hosted platform-as-a-service. Think of it as a private Heroku: it connects to GitHub, builds images, runs containers, wires up domains and certificates, and shows logs and a terminal in the browser.

How it runs

Six containers: coolify (the app), coolify-db (Postgres), coolify-redis (queues), coolify-realtime (websockets for live logs), coolify-sentinel (metrics) and coolify-proxy (Traefik). It talks to Docker through the local socket and to the host over SSH on 127.0.0.1. Version 4.3.23.

v4.3.236 containers

Traefik

Reverse proxy
coolify-proxy · :80 :443

The only container that listens on the internet. Watches Docker for labels, so a new app with a domain is routable within seconds. Requests and renews Let's Encrypt certificates automatically.

How it runs

Managed by Coolify. Attached to every app's private network so it can reach each container by name. Redirects all HTTP to HTTPS. Certificates live in acme.json inside /data/coolify/proxy. Version 3.6 (3.7 available).

let's encrypthttp→httpshttp/3

Supabase (self-hosted)

Backend-as-a-service
supabase.persmon.cloud

Postgres with batteries: instant REST API, authentication, file storage and a web studio. Used by newer projects such as Uganda Bookshop instead of writing a backend from scratch.

How it runs

A trimmed nine-container stack: kong (API gateway) in front of auth, rest, storage, meta, realtime and studio, with db (Postgres) and minio (S3-compatible object store) behind them. The public hostname answers 401 at its root by design — Kong wants an API key.

kongauthreststoragestudiominio

Postgres 17

Shared database
persmon-postgres · internal

A standalone Postgres server for apps that need a plain database without the Supabase layer. Reachable only from containers on its Docker network; never from the internet.

How it runs

Coolify-managed database resource. Included in the 03:00 full backup; its data directory is a named Docker volume on the NVMe disk.

postgres 17internal

Docker + Ubuntu host

Foundation
persmon-vps · 187.124.114.79

Ubuntu 24.04 LTS on a Hostinger KVM 4 (4 vCPU, 16 GB RAM, 200 GB NVMe) in London. Docker 29 runs every service as a container; nothing is installed directly on the host except Docker, the firewall and the backup scripts.

How it runs

Kernel 6.8. Unattended security upgrades; kernel updates wait for a chosen reboot window. 44 containers across 12 private bridge networks.

ubuntu 24.04docker 29.84 vCPU · 16 GB
At a glance

Versions and limits

ComponentVersionNote
Ubuntu24.04.4 LTSkernel 6.8.0-139, unattended security upgrades
Docker Engine29.8.1compose plugin 5.5.1
Coolify4.3.23concurrent builds: 2 · deployment queue: 25
Traefik3.6.253.7 available (minor); HTTP/3 enabled
Postgres (shared)17Coolify-managed volume
Supabase Kong3.9.1API gateway for the Supabase stack
RAM budget≈ 4 GB / 15 GB used≈ 9 GB in page cache; plenty of headroom for the roadmap
Live status Coolify