Server administrator or release manager
Deploy the private application and prove production readiness
Installation creates files and schemas; launch proves the system can operate safely. Keep the application root private, publish only the public archive, run current migrations, supervise background work, test restore, and retain evidence.
Before you start
- Final release archives and checksum.
- DNS, SSL, database, mail, workers, cron, and backup access.
- A disposable staging environment for final proof.
#Use the two-archive cPanel layout
- Point the HTTPS domain at
public_html/flowos. - Extract the root archive into a private folder such as
$HOME/flowos-app. - Extract the public archive at the document root without an extra nested folder.
- Create protected environment configuration and databases.
- Open
/install, finish setup, and lock it.
#Set production behavior explicitly
APP_ENV=production
APP_DEBUG=false
APP_URL=https://flowos.example.com
FLOWOS_DOCUMENTATION_URL=https://docs.ovion-tech.xyz/apps/flowos/
FLOWOS_OPERATIONS_ENABLED=falseKeep Operations disabled until its certification gate passes. Do not deploy local .env, tests, source documentation, package notes, or node_modules.
#Migrate and supervise background work
php artisan migrate --force
php artisan tenants:migrate --seed
php artisan tenants:doctor
php artisan flowos:health-check --strict
php artisan queue:work --queue=workflows,defaultRun Laravel’s scheduler every minute. Use a process supervisor for workers and restart them during controlled releases.
#Retain evidence before activation
Record release commit and checksum, migrations, tenant doctor, strict health, queue/scheduler proof, HTTPS, mail, sandbox payments, connector certification, backup and restore, security checks, and isolated browser E2E. Enable optional modules only when their own prerequisites pass.
#Common mistakes
- Publishing the private root under the web document root.
- Running production with APP_DEBUG enabled.
- Starting workers manually in a terminal.
- Enabling Operations to hide a failed release gate.
#Verify the result
- Only public assets are web-accessible.
- Central and tenant migrations pass.
- Workers and scheduler are supervised.
- Backup restore and strict health pass.
- Optional readiness labels are truthful.