Установка сервера 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 в список разрешенных
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.
Для проверки соединения между сервером а агентом нужно нажить кнопку "Check health" в верхнем правом углу.
Если все хорошо, то получаем подобную картину
Автоматизированный процесс установки описан Tentacle здесь http://octopusdeploy.com/documentation/configuration/installation
В следующем посте я расскажу об интеграции Octopus Deploy и Temacity.