Automated Hosting for Clients' WordPress Sites
I am currently re-structuring the (poor) hosting workflow that my company has been using to host our clients' websites.
- WHMCS, WHM, cPanel on Shared Server (insert cringe here)
- Billing through QuickBooks, not WHMCS (for whatever reason)
- Making accounts in WHMCS manually
Clearly, this is not a viable setup. It's a hassle and billing is even worse. The sites are slow and I can't change PHP limits or permissions, making many backup and migrations impossible. Below is a general explanation of what I wish to do.
- Small Ubuntu Droplet for (our) company homepage
- Large Ubuntu Droplet for client hosting
In the latter (Large) droplet, the following setup:
- WHMCS (manages Billing, Domains, Hosting Packages, Support System, Maintenance Notifications, etc.)
- WHM (implements WHMCS automation and users)
- cPanel (we believe that on the rare occasion a client desires access to make chances on the backend, cPanel is the best option)
- The Websites - Roughly 10 of them in our current situation.
It's all a good Idea, but I've never worked with a single VPS hosting groups of websites on the same disk. My questions are as follows:
- How do I partition the server to host several WordPress websites while maintaining reliability and isolation from one-another (in other words, being able to make PHP changes, etc without having an adverse effect on other sites)
- How do I set up WHM(CS) to manipulate said partitions
- How can I automate WordPress installation without having to use cPanel or manual setup. Because all of the websites run on the same infrastructure (PHP, SQL, WordPress), I want to find an efficient way to automate the WordPress installation. Ideally, after someone makes their first payment, the following will happen:
- Environment is set up (Server space is allotted)
- WordPress and it's prerequisites are installed
- I can go to the domain which points to the installation and complete the graphic WP setup.
I do appreciate everyone who shares their input. Much thanks,