среда, 20 ноября 2013 г.

Установка Octopus Deploy

Установка сервера Octopus Deploy

Octopus Deploy - позволит реализовать деплоймент нашего asp.net mvc приложение на существующее окружение. Он обеспечит:

  • копирование нашего пакета (будет создаваться на TeamCity) на удаленную машину с IIS
  • подмену значений в web.config
  • запуск Database migration скриптов
  • разворачивание этого пакета в определенную папку
  • настройку IIS, выполнив powershell скрипты на этой машине
  • UI для управления и мониторинга деплоймента
  • интеграцию с TeamCity и MSBuild

Для начала запускаем новую виртуалку и скачиваем инсталляцию Octopus Deploy Server c http://octopusdeploy.com/downloads, далее устанавливаем Octopus. По окончании установки, запускам визард конфигурации, он скорее всего ругнется, что не все компоненты IIS установлены. В мое случаю он просит выполнить команду для установки ISS

DISM.exe /Online /Enable-Feature /FeatureName:IIS-WebServerRole /FeatureName:IIS-WebServer /FeatureName:IIS-CommonHttpFeatures /FeatureName:IIS-StaticContent /FeatureName:IIS-DefaultDocument /FeatureName:IIS-HttpErrors /FeatureName:IIS-ASPNET /FeatureName:IIS-ASPNET45 /FeatureName:IIS-NetFxExtensibility /FeatureName:IIS-NetFxExtensibility45 /FeatureName:IIS-ISAPIExtensions /FeatureName:IIS-ISAPIFilter /FeatureName:IIS-ManagementConsole /ALL

Выполняем эту команду через Command Promt (win-R, и выполняем cmd).

Deployment Image Servicing and Management tool
Version: 6.2.9200.16384
Image Version: 6.2.9200.16384
Enabling feature(s)
[==========================100.0%==========================]
The operation completed successfully.

Потом жмем "Check Again" и попадаем в Octopus Administration Tools, здесь задаем наши настройки. Наиболее важны вкладки Server И Web Portal, где нам нужно запустить Octopus Server сервис и Web UI. Если используем порт 80, то необходимо остановить Default Web Site.
Так же важно не забыть открыть порт в Firewall
netsh advfirewall firewall add rule name=Octopus dir=in action=allow protocol=TCP localport=80

Теперь может открыть Octopus UI, где нам предложат создать админский аккаунт. После его создания мы должны увидеть следующее.
В Octopus создаем новые окружением, например Dev и проект, например Web Site.

Подготовка нового окружения.

Мой Asp.net mvc веб сайт будет хоститься на отдельной новой виртуалке.
Что бы подготовить ее нужно выполнить следующее:
  • Установить IIS и NET 4.5
  • Удалить Default Web Site
  • Открыть порт 80 в Firewall
  • Установить Octopus Tentacle
  • Добавить наш Octopus Server в список разрешенных
Для установки IIS, опять воспользоваться командой

DISM.exe /Online /Enable-Feature /FeatureName:IIS-WebServerRole /FeatureName:IIS-WebServer /FeatureName:IIS-CommonHttpFeatures /FeatureName:IIS-StaticContent /FeatureName:IIS-DefaultDocument /FeatureName:IIS-HttpErrors /FeatureName:IIS-ASPNET /FeatureName:IIS-ASPNET45 /FeatureName:IIS-NetFxExtensibility /FeatureName:IIS-NetFxExtensibility45 /FeatureName:IIS-ISAPIExtensions /FeatureName:IIS-ISAPIFilter /FeatureName:IIS-ManagementConsole /ALL

или powershell скриптом

Install-WindowsFeature web-server, Web-Net-Ext45, Web-Asp-Net45

Порт открываем командой

netsh advfirewall firewall add rule name=WebSite dir=in action=allow protocol=TCP localport=80

Для установки агента Octopus Tentacle качаем его с http://octopusdeploy.com/downloads
После установки tentacle запускается визард, где нам нужно указать Thumbprint нашего сервера (его можно найти по адресу OCTOPUS_SERVER/configuration/certificates) и запустить Tentacle Service.
А так же нужно открыть порт 10933 для того что бы Octopus Server мог давать команды Octopus Tentacle 

netsh advfirewall firewall add rule name=Octopus dir=in action=allow protocol=TCP localport=10933

Теперь наш Dev сервер готов к деплойменту на него нашего приложения, осталось добавить его на Octopus Server.

Возвращаемся на Octopus Server UI, вкладка environments и добавляем новую машину в окружение Dev
Thumbprint можно взять в Tentacle Administration Tool.
Для проверки соединения между сервером а агентом нужно нажить кнопку "Check health" в верхнем правом углу.

Если все хорошо, то получаем подобную картину
Автоматизированный процесс установки описан Tentacle здесь http://octopusdeploy.com/documentation/configuration/installation

В следующем посте я расскажу об интеграции Octopus Deploy и Temacity.

Комментариев нет:

Отправить комментарий