I have a application whose code is hosted on GitHub. This application is a school management system built using the Laravel Framework. I need advise on how I can implement it with the following architecture.
- Each school has its own database. (Multi-tenancy-multi-database)
- All schools share the same codebase
- Each school has it's own custom subdomain.
Currently I am using Heroku. What happens in Heroku is;
- I simply create an app,
- Update the ENV Variables (DB_Name)
- Get the DNS Nameserver address and create a CNAME record on CloudFlare to create the custom subdomain for the school.
I now have to replicate the same workflow in a different server provider (AWS or On-Premise Server)
If I was to choose AWS, how can I implement the above workflow? And I were to go for ON Premise how can I implement it?
I just need the advise around which tools to use, the rest I think I can figure out. I am still new in DevOps, my technical knowledge is still very foundational.
I would really appreciate a guide on how I can best go about it.