Какой инструмент мне следует использовать для автоматизации развертывания приложения ASP.NET MVC?

StackOverflow https://stackoverflow.com/questions/1183600

Вопрос

Я написал сайт для своей летней стажировки, используя ASP.NET MVC.Прогресс идет хорошо, но одна вещь, которую я считаю болезненной, — это развертывание.В частности, потому что у нас частые развертывания, и я делаю их вручную.

Я ищу своего рода «стандартный» инструмент развертывания .NET, который можно использовать с проектом ASP.NET MVC для автоматизации процесса развертывания.

Некоторые вещи, которые мне хотелось бы, чтобы этот инструмент мог делать (сейчас я делаю это вручную):

  • Установите режим компиляции на «Выпуск».
  • Опубликовать проект веб-приложения ASP.NET MVC
  • Убедитесь, что режим отладки = «Выкл.» в моей веб-конфигурации.
  • Измените строки подключения для нашей базы данных с dev db на информацию prod db.
  • Перенос сайта на веб-сервер
  • В идеале было бы неплохо, если бы он остановил сайт IIS и заменил существующий сайт новыми файлами, а затем перезапустил его.

Учитывая такие мягкие требования, какой инструмент вы бы посоветовали мне использовать для решения этой проблемы?Я использую II7, если это имеет значение.

Это было полезно?

Решение

Я бы использовал NAnt.Ты можешь иметь это:

  • Получите код из своего репозитория исходного кода (для подавляющего большинства из них есть плагины).
  • Он может скомпилировать код либо напрямую, либо использовать файл решения и параметры командной строки для запуска vstudio.Посмотрите на параметры командной строки, и вы сможете указать ему выполнить перестройку и изменить режим на Release.
  • Он имеет XML-команды (XMLPOKE), которые позволят вам легко отключить режим отладки в рамках развертывания.
  • Копировать файлы легко (есть много способов сделать это).

И вам не нужно останавливать сайт IIS.Вы можете просто добавить файл app_offline.htm (проверьте мое имя файла).При посещении сайта эта страница автоматически отображается.Поэтому сценарий NAnt развернет файл на первом этапе и удалит его на последнем этапе.

Другие советы

Это поддерживается только до VS2010.

Проверьте Проект веб-развертывания.Он способен сделать большую часть того, что вы просите.Я использовал его для строительной части развертывания.Я не уверен в копировании в iis и перезапуске IIS-части.

Вы взглянули на Веб-развертывание еще?

Можешь попробовать УстановитьAce который заботится о большинстве сценариев развертывания веб-приложений, включая упаковку сборки, задачи сценариев, задачи IIS или SQL, распространение файлов и обновление файлов конфигурации на стороне сервера.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top