GovernanceMode is a microservices GRC platform: a Vue 3 SPA served by Nginx, an API gateway written in Go, and 13 Laravel/PHP domain services running behind RoadRunner gRPC workers, backed by MongoDB and Redis.
13 PHP/Laravel domain services + 1 Go API gateway. All PHP services communicate via gRPC through RoadRunner. Direct HTTP to PHP services returns 403 — clients must use the Go gateway.
Nginx Routing Map
Site config at /etc/nginx/sites-available/governance-mode.
Gateway snippet included from /etc/nginx/snippets/governance-mode-gateway.conf.
Server name: 84.13.157.154. Headers: client_max_body_size 100M, large header buffers for JWT.
Two config files under /etc/supervisor/conf.d/: gateway-grc.conf (14 RR workers + gateway) and gateway-grc-queues.conf (14 queue workers + 1 schedule + 1 reverb).
gRPC Workers (gateway-grc.conf)
RoadRunner + Go gateway
Queues & Schedule (gateway-grc-queues.conf)
artisan queue:work + schedule:work + reverb:start
Port Allocation Map
Visual map of all ports used by the GovernanceMode stack. Public-facing ports are Nginx (:80) and Reverb (:7002). Everything else binds to localhost.
All Ports
Hover for details
Web (public) HTTP (local) gRPC (local) WebSocket Database
MongoDB Databases
Each service uses its own database (named after the folder). The grc database stores gateway service_model_maps. No auth on reference; local bind 127.0.0.1:27017.
Shared Secrets Matrix
Must match across all services
Variable
Set In
Purpose
JWT_SECRET
Gateway + all PHP services
JWT sign/verify
SERVICE_API_KEY
Gateway + all PHP + front (VITE_APP_SERVICE_API_KEY)
x-api-key header
API_GATEWAY_SECRET
All PHP services
HMAC session tokens
API_GATEWAY_GRPC
All PHP services
127.0.0.1:50050
REVERB_APP_KEY / SECRET
Notification .env + front VITE_NOTIFICATION_REVERB_KEY
WebSocket auth
Operations Scripts
Helper scripts bundled in devops-docs/scripts/. Copy to /var/www/html/governance_mode/ for use.
Common Failures & Gotchas
Known issues from the reference deployment. Filter by severity.
New Server Checklist
Interactive checklist for deploying GovernanceMode on a fresh server. Progress is saved locally in your browser.