Я бы хотел создать «идеальный» стек разработки ламп.
- Двойной сервер (виртуализированный, ESX)
- Apache / PHP для одной, базы данных (MySQL, PgSQL и т. Д.) Для другой.
- Пользователь (разработчик) Управляемая мини-среда или экземпляр.
- Каждый экземпляр разработчика совместно использует конфигурацию верхнего уровня (доступные модули, конфигурацию по умолчанию и т. Д.)
- Разработчик должен контролировать свои apache и php версию для каждого проекта.
- Разработчик может изменить второстепенные настройки, т.е. использовать магические кавычки для устаревшего кода.
- Каждый проект определяет своего поставщика базы данных в своем коде
Идея заключается в том, что я могу управлять этим сервером, способным администрировать, и предоставлять глобально сконфигурированные вещи, такие как APC, Memcached, XDebug и т. Д. Затем, переходя к подмножествам для каждого проекта, я могу позволить своим пользователям быстро контролировать свои среды для различных проектов.
По сути, я предлагаю типичную систему разработчика, использующую свой собственный стек на своей машине, но централизованный. Таким образом, я надеюсь избежать таких проблем, как проблемы с кросс-ОС, несоответствия базы данных, немного отличающиеся установки, приводящие к ошибкам и т. Д.
Я счастлив управлять этим в пользовательских сборках из исходного кода, но если это вообще возможно, было бы здорово, если бы большая его часть управлялась с помощью какого-либо управления пакетами. Мы обычно используем CentOS, так что?
Кто-нибудь когда-либо строил что-то подобное раньше? Есть ли что-то под ключ, похожее на то, что я описал? Есть ли какие-нибудь полезные руководства, которые я должен прочитать, чтобы создать что-то подобное?