Deploying to multiple Laravel Vapor appsJanuary 8, 2022
I recently launched HighSchoolNotes.com.au into another region HighSchoolNotes.co.nz. Under the hood this is the very same Laravel app, deployed onto Laravel Vapor. Initially I had the New Zealand app running as a separate environment in the main app (
production-nz) but it felt like it was a better decision to split these entirely - while they run the same code they use different databases, caches and storage.
Luckily, Laravel Vapor has a mechanism for supporting multiple Laravel apps for the same project - and that is letting you point it to a configuration file when you call it. By default this will be
vapor.yml but you can change this as well as having multiple. For my second app I added
vapor.nz.yml which pointed to another setup - simply referencing that configuration file with
--manifest is all you need work with multiple Vapor apps.
vapor deploy production --manifest=vapor.nz.yml