nginx vhost map (snapshot 2026-05-03)
All sites in /etc/nginx/sites-enabled/. Cloudflare proxied where noted.
| vhost | Type | Backend / root | Notes |
|---|---|---|---|
| corone.monster | proxy | 127.0.0.1:3000 | ELC Ryo, systemd corone-app |
| kebahagiaan.corone.monster | proxy | 127.0.0.1:3001 | ELC Julian, systemd kebahagiaan-app |
| hermes.corone.monster | proxy | 127.0.0.1:8787 | Self-healing supervisor |
| webui.corone.monster | proxy | 127.0.0.1:3010 | Open WebUI |
| pasukuru.cocon-lab.com | proxy | 127.0.0.1:3200 | FE, wildcard *.pasukuru.cocon-lab.com |
| api-pasukuru.cocon-lab.com | proxy | 127.0.0.1:3201 | BE NestJS |
| curva.cocon-lab.com | static | /var/www/curva.cocon-lab.com/public | Laravel deploy clone |
| kokorozashi-app.cocon-lab.com | static | /var/www/kokorozashi-app.cocon-lab.com | Manuals (88 files, 14MB) |
| kokorozashi-staging.cocon-lab.com | proxy | 127.0.0.1:8480 | Staging Laravel app |
| passkuru.cocon-lab.com | static | /var/www/passkuru.cocon-lab.com | LP |
| cocon-lab.com | static | /var/www/cocon-lab.com | Hosts session public dirs |
| assets.cocon-lab.com | static | /var/www/assets.cocon-lab.com | CDN (Kokorozashi assets etc.) |
Port allocation summary
| Port | Service | Backed by |
|---|---|---|
| 3000 | corone-app (ELC Ryo) | systemd corone-app |
| 3001 | kebahagiaan-app (ELC Julian) | systemd kebahagiaan-app |
| 3010 | Open WebUI | Docker (open-webui container) |
| 3200 | Pasukuru FE | systemd pasukuru-fe (Next.js standalone) |
| 3201 | Pasukuru BE | systemd pasukuru-be (NestJS) |
| 5174 | Pasukuru dev port | (Vite-style dev process) |
| 5432 | Postgres | Docker |
| 8000 | Pasukuru Curva mock | systemd pasukuru-curva-mock |
| 8025 / 8026 / 8084 | Mailhog UIs | Docker (Pasukuru + Kokorozashi staging) |
| 8480 | Kokorozashi staging Laravel | Docker (kokorozashi_staging_app) |
| 8787 | Hermes Web UI | systemd hermes-webui (Python uvicorn) |
| 9119 | Hermes Dashboard | systemd hermes-dashboard |
| 16379 | Redis | Docker |
| 33306 | Pasukuru MySQL | Docker (passukuru-db) |
SSL
All public vhosts: Let’s Encrypt via certbot (auto-renew). DNS-01 (Cloudflare) for wildcards (Pasukuru), HTTP-01 for the rest. Cloudflare proxy mode = Full or Full(Strict) per vhost.