Laravel requirements
Repository layout, versions, migrations and queue workers for Laravel apps.
Laravel apps are backends on App Platform. Kubana builds them from your repository, so you don’t need a Dockerfile.
Repository layout
artisanmust be at the root of the repository. Apps in a subfolder aren't supported.composer.jsonmust require the Laravel major version you select in Kubana.- On Laravel 11 and later, keep the default
/uphealth route. Kubana requires it.
Versions
Pick the Laravel and PHP versions in the app's Configuration tab before the first deploy. Changing them later rebuilds the app from scratch on the next deploy.
Environment variables
Set APP_KEY, database credentials and the rest of your .env in the Environment tab. Paste your .env file to add them all at once. See Set environment variables.
Vite variables
Laravel variables are available at run time only. VITE_* variables aren't available during the asset build yet.
Migrations and post-deployment commands
Kubana never runs migrations on its own. To run them on every deploy, add a post-deployment command in Configuration, for example:
php artisan migrate --forceCommands run in order after each successful deploy. You can add up to 20, each up to 1,000 characters.
Queues and the scheduler
Create a separate app with the Laravel Worker framework from the same repository. It runs the queue worker and the scheduler. Run one per project. A worker is a background service, so it has no public URL and no custom domains.
Step-by-step tutorial
For a full walkthrough with screenshots, read How to deploy a Laravel app on Kubana App Platform.
Last updated 19 October 2026 · Something missing or wrong? Tell us
