I have a Windows 7 machine on which I use both PHP / MySql Dev and .NET / C # / Sql Server. Due to a recent reinstallation, I thought it might be the perfect time to try to keep my machine a little cleaner, rather than installing both Apache and IIS, etc.
I installed VirtualBox with Ubuntu 10.04 as a guest OS with a plan to move my PHP version from my old Windows / Apache / MySql platform to this virtual image. In addition to this, I want to add CruiseControl / phpUnderControl to my PHP development process.
So far I have installed Ubuntu 10.04 with the LAMP stack, as well as Netbeans for PHP, MySQL Workbench, etc., which is almost the same as setting up my old Windows, but now I also installed SVN and CruiseControl (I have not installed phpUnderControl yet, but this is the next step).
My question is: can I use this virtual image as my "local" development environment and as a build server, so I don’t need to clutter my own Windows machine with MySql / PHP related software (this means I can save is it nice and clean for .NET development)?
I assume that I need a virtual web server so that it can serve both the "local" dev version of any project I'm working on and the intermediate version that will be built using cruisecontrol / svn transactions?
Or should I separate my dev and build servers, perhaps support local development on Windows and use only a virtual image for the build server? or is it possible to have two separate virtual machines for different purposes?
I would appreciate some advice on how to do this. One of the projects I want to work on is rather complicated, so I want to make sure that I do it right before the project starts, so that I can guarantee that the project is well supported by versions, unit tests and continuous integration, should I ever use other developers in the project.