Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 4 из 4)

Это четвертое пошаговое руководство в серии руководств, иллюстрирующих способы развертывания проекта веб-приложения с помощью пакета веб-развертывания. Дополнительные сведения об этой серии см. в разделе Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 1 из 4).

В этом пошаговом руководстве пакет, созданный в третьем руководстве, используется для установки веб-приложения на удаленный компьютер. В данном пошаговом руководстве рассмотрены следующие задачи:

  • установка пакета на удаленный компьютер с помощью файла deploy.cmd;

  • применение пользовательских параметров развертывания для значений конфигурации, которые нужно изменять после установки пакета.

Обязательные компоненты

Список необходимых компонентов см. в разделе Пошаговое руководство. Развертывание проекта веб-приложения с помощью пакета веб-развертывания (часть 1 из 4).

Подготовка конечного сервера

Если целевой сервер настраивает кто-то другой, этот человек укажет вам правильный метод развертывания. При самостоятельной настройке целевого сервера необходимо выбрать метод. Доступны следующие методы.

  • Служба веб-управления (WMSvc) и обработчик веб-развертывания.

  • Служба агента веб-развертывания (MSDepSvc).

  • Параметр поставщика tempAgent Веб-развертывание.

Дополнительные сведения об этих методах и о том, как настроить для их использования целевой сервер, см. раздел Практическое руководство. Установка пакета развертывания с помощью файла deploy.cmd.

Помимо настройки для использования выбранного метода развертывания, целевой сервер должен отвечать следующим требованиям.

  • Включены службы IIS 7.

  • Платформа ASP.NET 4 зарегистрирована в службах IIS 7.

  • Пул приложений ASP.NET 4, назначенный веб-сайту по умолчанию.

целевой сервер должен быть настроен перед продолжением этого пошагового руководства.

Настройка параметров развертывания

В следующей процедуре выполняется проверка, что файл SetParameters.xml содержит правильные значения. Это аналогично проверке или изменению значений параметров, отображаемых в диалоговом окне Ввод данных о пакете приложения при установке пакета с помощью диспетчера служб IIS.

Изменение файла SetParameters.xml

  1. Откройте проект веб-приложения, созданный в первом пошаговом руководстве серии.

  2. В Обозревателе решений последовательно разверните папки obj, Release и "Пакет". (В предыдущем примере открывалась папка Debug. Убедитесь, что сейчас вы работаете с папкой Release, а не Debug.)

  3. Откройте файл AdventureWorks.SetParameters.xml.

    XML-содержимое файла будет выглядеть примерно так.

    <parameters>
      <setParameter name="IIS Web Application Name" 
        value="Default Web Site/AdventureWorks" /> 
      <setParameter name="machineKey" value="staging" /> 
      <setParameter name="ApplicationServices-Deployment Connection String"
        value="... " /> 
      <setParameter name="AWLTConnectionString-Deployment Connection String"
        value="..." /> 
      <setParameter name="ApplicationServices-Web.config Connection String" 
        value="..." /> 
      <setParameter name="AWLTConnectionString-Web.config Connection String" 
        value="..." /> 
    </parameters>
    

    Обратите внимание на элемент setParameter, атрибут name которого имеет значение machineKey. Атрибут value этого элемента setParameter имеет значение staging, то есть значение по умолчанию, заданное для развертывания на сервере промежуточного хранения в третьем пошаговом руководстве серии. Если бы вы собирались установить пакет на рабочий сервер, можно было бы изменить атрибут value этого элемента setParameter для параметра machineKey, присвоив ему рабочее значение. После этого в развернутом файле Web.config значение промежуточного хранения менялось бы на рабочее значение.

Подготовка к удаленной установке с помощью файла Deploy.cmd

В следующей процедуре выполняется подготовка к выполнению файла deploy.cmd. Для этого нужно открыть командную строку и перейти в папку, содержащую файл deploy.cmd.

Подготовка к удаленной установке с помощью файла Deploy.cmd

  1. В Обозревателе решений выберите файл AdventureWorks.SetParameters.xml.

  2. Обратите внимание на значение свойства Полный путь в окне Свойства.

  3. В меню Windows Пуск выберите пункт Командная строка.

  4. Перейдите в папку, в которой находится файл AdventureWorks.SetParameters.xml.

    Окно Командная строка готово к вводу команды, выполняющей файл deploy.cmd.

Синтаксис файла deploy.cmd отличается в зависимости от используемого способа развертывания. Используйте процедуру, соответствующую выбранному способу.

В примерах синтаксиса в следующих разделах используются следующие заменители.

  • Имя_сервера. Заменяется на имя целевого сервера.

  • Имя_пользователя и пароль. Если применимо, заменяются фактическими учетными данными, заданными для развертывания.

Удаленная установка с помощью обработчика веб-развертывания

В следующей процедуре описывается установка пакета с помощью службы веб-управления (WMSvc) и обработчика веб-развертывания.

Развертывание с помощью службы веб-управления и обработчика веб-развертывания

  1. Введите следующую команду, чтобы выполнить пробный запуск установки пакета.

    AdventureWorks.deploy.cmd /t /m:https://ServerName:8172/MSDeploy.axd /u:username /p:password /a:basic
    

    Для развертывания с помощью службы веб-управления обычно создается учетная запись пользователя, используемая при развертывании.

    Параметр t обеспечивает выполнение команды в пробном режиме, чтобы можно было проверить ее результаты до фактического развертывания приложения.

    Примечание

    В некоторых случаях развертывание может завершиться сбоем, если используется параметр t, хотя при использовании параметра y оно пройдет успешно.Дополнительные сведения см. в разделе Вопросы и ответы о развертывании проектов веб-приложений ASP.NET.)

  2. Если результат пробного запуска оказался не тем, что ожидался, внесите любые необходимые изменения.

  3. Если результат пробного запуска соответствует ожидаемому, повторите команду, заменив флаг t (пробный) флагом y (да), как показано в следующем примере.

    AdventureWorks.deploy.cmd /y /m:https://ServerName:8172/MSDeploy.axd /u:username /p:password /a:basic
    

Удаленная установка с помощью службы агента веб-развертывания

В следующей процедуре описывается установка пакета с помощью службы агента веб-развертывания (MsDepSvc).

Развертывание с помощью службы агента веб-развертывания

  1. Введите следующую команду, чтобы выполнить пробный запуск установки пакета.

    AdventureWorks.deploy.cmd /t /m:ServerName
    

    Для службы агента веб-развертывания обычно используется проверка подлинности Windows. Указывать имя пользователя и пароль не нужно.

    Параметр t обеспечивает выполнение команды в пробном режиме, чтобы можно было проверить ее результаты до фактического развертывания приложения.

    Примечание

    В некоторых случаях развертывание может завершиться сбоем, если используется параметр t, хотя при использовании параметра y оно пройдет успешно.Дополнительные сведения см. в разделе Вопросы и ответы о развертывании проектов веб-приложений ASP.NET.)

  2. Если результат пробного запуска оказался не тем, что ожидался, внесите любые необходимые изменения.

  3. Если результат пробного запуска соответствует ожидаемому, повторите команду, заменив флаг t (пробный) флагом y (да), как показано в следующем примере.

    AdventureWorks.deploy.cmd /y /m:ServerName
    

Удаленная установка с помощью параметра поставщика tempAgent

В следующей процедуре описывается установка пакета с помощью параметра поставщика tempAgent инструмента Веб-развертывание.

Развертывание с помощью параметра поставщика веб-развертывания tempAgent

  1. Введите следующую команду, чтобы выполнить пробный запуск установки пакета.

    AdventureWorks.deploy.cmd /t /m:ServerName /g:true
    

    Для параметра поставщика tempAgent обычно используется проверка подлинности Windows. Указывать имя пользователя и пароль не нужно.

    Параметр t обеспечивает выполнение команды в пробном режиме, чтобы можно было проверить ее результаты до фактического развертывания приложения.

    Примечание

    В некоторых случаях развертывание может завершиться сбоем, если используется параметр t, хотя при использовании параметра y оно пройдет успешно.Дополнительные сведения см. в разделе Вопросы и ответы о развертывании проектов веб-приложений ASP.NET.)

  2. Если результат пробного запуска оказался не тем, что ожидался, внесите любые необходимые изменения.

  3. Если результат пробного запуска соответствует ожидаемому, повторите команду, заменив флаг t (пробный) флагом y (да), как показано в следующем примере.

    AdventureWorks.deploy.cmd /y /m:ServerName /g:true
    

Следующие действия

В первых двух пошаговых руководствах серии было выполнено развертывание проекта файловой системы веб-приложения в веб-приложение IIS, чтобы проверить его на компьютере разработки. В третьем пошаговом руководстве был создан пакет для развертывания на сервер промежуточного хранения или рабочий сервер. В этом пошаговом руководстве, последнем в серии, пакет был развернут на удаленный компьютер с помощью файла deploy.cmd, который Visual Studio создает вместе с пакетом.

К другим обычным сценариям развертывания на серверы промежуточного хранения и рабочие серверы относятся следующие.

  • Использование одного пакета для развертывания на несколько серверов в веб-ферме с подавлением развертывания базы данных для каждой установки после первой.

  • Предотвращение развертывания некоторых файлов (например, Web.config), так как они обновляются на целевом сервере вручную, и эти изменения не должны быть перезаписаны.

  • Дополнительные сведения об этих сценариях см. в разделе Практическое руководство. Установка пакета развертывания с помощью файла deploy.cmd.

См. также

Основные понятия

Карта содержимого развертывания ASP.NET