заменяем гипервизор: виртуализация дешевле любого, в т.ч. того же Vagrantа
+ расшариваемый доступ на чтение
+ секурность какая-никакая, хоть это отдельная тема
идея проста: процессор, как правило, дешевле памяти, т.к. редко нагружен более 50%, поэтому для кучи проектов дешевле держать один сервер с много памяти, чем несколько серверов (хороший канал, разумеется)
у нас устроено так: nginx на хосте, он же занимается статикой, статика тоже на хосте, а upstream-ы с динамикой (Flask, Django, по-моему bottlepy еще есть) - все в контейнерах, sphinx в контейнере, еще один nginx c сишным демоном тоже в контейнере
базы, правда, разделяемые - есть и в хосте и в контейнерах
"по нормальному" надо бы не разделять базы, т.е. тоже каждую в контейнер, но такую кучу наворачивать пока стремно да и - когда один проект не грузит, другой грузит, это лучше
тут особых наворотов нет - только уверенность в работоспособности других сайтов, если какой-то сложит программер, но вариации могут быть самыми разными - например, nginx с самописными/специфическими модулями в контейнере не ложит остальное, где-то применить Varnish для кеширования, потестить какой-нибудь Aerospike без боязни положить систему и т.п.