Core Docs

Deployment

Deployment



CI/CD pipeline, Plesk configuration, and webhook-based auto-deploy.

Infrastructure



  • VPS: Plesk Obsidian 18.0.77.5 on Ubuntu 24.04

  • Domain: medkronos.com

  • Each core service = dedicated subdomain

Automated CI/CD



Deployment is fully automated:

  1. Developer pushes to GitHub

  2. GitHub webhook fires to the corresponding Plesk subdomain

  3. Plesk executes a git pull on the subdomain's document root

  4. Live filesystem updated automatically

Webhook Configuration



Each repository has a GitHub webhook pointing to its Plesk subdomain. The VPS authenticates with GitHub via a secure SSH key pair.

SSH Key Authentication



  • VPS has an SSH key pair configured for GitHub access

  • ssh-keyscan github.com >> ~/.ssh/known_hosts ensures non-interactive pulls

  • Key is shared across all core service deployments

Deployment Order



  1. core.backend (Composer package — other services depend on it)

  2. core.console (management plane — must be running before other services are accessed through it)

  3. core.auth (identity — core.console delegates auth to it)

  4. core.storage

  5. core.ai

  6. core.hypermedia

  7. core.assets

  8. core.docs

Composer Dependencies



Services that use core.backend require composer update after a core.backend change. On the VPS, run:

cd /var/www/vhosts/medkronos.com/<subdomain>
composer update unvrsl/core-backend


Subdomain Mapping



RepositorySubdomain









core.consolecore.console.medkronos.com
core.authauth.medkronos.com
core.storagecore.storage.medkronos.com
core.aicore.ai.medkronos.com
core.assetscore.assets.medkronos.com
core.hypermediacore.hypermedia.medkronos.com
core.docscore.docs.medkronos.com
universal.desktopdesktop.medkronos.com