This might help you Definitely go with the VM solution on this one. For any given customer, you can spin up and configure, at will, a development and server environment that is as similar to their production environment you want.
Go with GWT + AppEngine or LAMP? Existing Java Developer
Does that help As far as I know, the GWT only gives you client-side code, so you would need some kind of backend anyway. That means that you get full control over database and sql if you want to. That said, you could even have frontend code generated with GWT which communicates with P HP scripts with M ysql DB on an A pache server on L inux.
What is an ideal TFS ALM Environment Setup for a Solo Developer?
With these it helps If hardware resources are limited I would recommend you look at TFS service, it will give you all of the benefits without having to support the hardware. The other good part is the service seems to be updated more frequently and being as Lab Management is relatively new that may end up being a real help.