Назад | Перейти на главную страницу

Как организованы ваши серверы в отношении процесса веб-разработки?

Я настраиваю серверы для разработки веб-сайтов. Я хочу, чтобы все было организовано достаточно стандартно. Как вы организуете свои серверы для разработки относительно небольших веб-сайтов, каждый из которых имеет немного уникального кода?

Некоторые детали, которые меня беспокоят, включают (но не ограничиваются):

  1. Какие отдельные серверы существуют в отношении процесса разработки? Какова их цель?

  2. Где находится ваш главный репозиторий исходного кода?

  3. Где ведутся разработки?

  1. Рекомендую следующую инфраструктуру:
    1. Главный сервер разработки, содержащий систему контроля версий, отслеживание ошибок, запуск виртуальной машины сборки и т. Д.
    2. Мощные рабочие станции разработчика / QA (или ноутбуки, если необходимо) для работы в качестве рабочих столов и для запуска тестовых виртуальных машин разработчика
    3. Протестируйте виртуальные машины на каждом компьютере разработчика, которые отражают производственную ОС / конфигурацию, с которыми они могут поиграть (чтобы проверить идеи об изменениях конфигурации, которые могут потребоваться) и при необходимости могут удалить и восстановить известное состояние (из основных образов);
    4. Тестирование / контроль качества виртуальных машин на рабочих станциях отделов контроля качества, чтобы отдельные тестировщики могли управлять своими собственными процессами тестирования / контроля качества, не наступая никому на ноги;
    5. Виртуальная машина сборки / CI, на которой могут быть созданы «заведомо хорошие» сборки для внутреннего тестирования;
    6. Промежуточная среда, которая отражает производственную среду во всех возможных отношениях, которая используется для проверки полных сборок при подготовке к производственной версии, а также для проверки изменений в настройке системы;
    7. Производство, которое заблокировано от доступа разработчиков и где происходит вся настоящая работа (очевидно)
    8. Также существует куча служб поддержки системных администраторов, таких как золотой сервер которые напрямую не применимы для разработчиков.
  2. На главном сервере разработки
  3. На рабочих станциях разработчиков либо напрямую (в любой среде, которую они считают наиболее продуктивной), либо на их личных тестовых виртуальных машинах.

Все это звучит как излишество, если все, что вы делаете, создает «относительно небольшие веб-сайты, каждый с небольшим количеством уникального кода». Похоже, что вы - группа из одного человека, и в этом случае прикрепите все это на свой ноутбук (с хорошими резервными копиями ближнего и дальнего действия) в виртуальные машины, если это необходимо. Что еще более важно, вы захотите подумать о том, как вы структурируете свой код в повторно используемые модули и как вы используете возможности ветвления вашей системы контроля версий, чтобы общий код был общим, а уникальный код оставался уникальным и не мешал друг другу. . Но этот вопрос лучше всего задать в Stack Overflow, а не здесь.