W mojej codziennej pracy przy programowaniu aplikacji webowych mam wiele lokalnie skonfigurowanych wirtualnych hostów do obsługi poszczególnych projektów. Niestety wszystkie aplikacje działają w tym samym środowisku (wersja Apache, PHP, RoR, MySQL, itp.), a ewentualne zróżnicowanie jest problematyczne. Niedawno przeniosłem jednak projekty do wirtualnej maszyny, gdzie mogę mieć dowolną konfigurację środowiska nie zmieniając mojej lokalnej.
Co dokładnie daje mi takie rozwiązanie? Mam zainstalowany serwer linuksowy (Ubuntu w moim przypadku) na podstawowej maszynie i tam skonfigurowane wszystkie projekty. Są tam też uruchomione domyślne wersje serwerów z repozytorium. Jeżeli jednak potrzebuję sprawdzić działanie serwisu w innej wersji oprogramowania (np. PHP 6.0), robię klon wirtualnej maszyny, konfiguruję takie oprogramowanie, jakie potrzebuję i... voila, moje aplikacje uruchamiane są w nowym środowisku. Mój lokalny system jest niezmienony, a powrót do poprzedniej konfiguracji to poprostu wyłączenie nowego serwera i włączenie poprzedniego. Bardzo wygodne!
Największą zaletą tego rozwiązania jest to, że nie muszę zmieniać mojego środowiska programistycznego. Wszystkie pliki umieszczone są cały czas na mojej stacji roboczej i mogę na niej uruchamiać dowolne oprogramowanie do tworzenia kodu (np. NetBeans, RadRails czy gedit) oraz testowania (przeglądarki WWW). I to wszystko za pomocą darmowego oprogramowania! Czy może być lepiej?






