#asp.net #web-deployment #blazor #blazor-server-side #asp.net-blazor
#asp.net #веб-развертывание #blazor #blazor-на стороне сервера #asp.net-blazor
Вопрос:
В настоящее время у меня есть серверное приложение Blazor, которое скоро будет готово к развертыванию, и я думал о лучших методах повторного развертывания для исправления ошибок или таких вещей, как изменения одной страницы / изменения CSS в будущем.
Тем не менее, я довольно новичок в развертывании / обслуживании, поэтому хотел бы получить совет (и что лучше, чем спросить сообщество SO) о лучших практиках / процессах, которые я мог бы использовать для повторного развертывания новых версий приложения в будущем.
В настоящее время я публикую приложение в папке локально из Visual Studio, а затем загружаю эту опубликованную папку на веб-сервер, где веб-сайт размещен в IIS.
Мой основной фокус, по которому я хотел бы получить совет:
Когда я запустил приложение в режиме реального времени на веб-сервере, и мне нужно внедрить исправление ошибки или, например, внести изменения в веб-страницу / изменение css, мои мысли были бы такими:
- Опубликуйте новую версию приложения в локальной папке
- Перевести сайт в режим обслуживания
- Удалите всю текущую папку приложения с веб-сервера
- Загрузите мою недавно опубликованную папку локального приложения (с шага 1.) на место, содержащее изменения
- Заставьте веб-сайт снова работать
Будет ли это правильным подходом или есть гораздо лучшая практика / процесс для повторного развертывания?
Очевидно, что если бы это был обычный веб-сайт, вы бы просто заменили отдельные файлы html, JS или CSS, которые вы изменили, и все готово, но с приложениями Blazor все немного иначе, поскольку вам нужно опубликовать все приложение (насколько я знаю).
Простите, если этот вопрос звучит тривиально, я просто хочу быть на 100% уверен, что у меня правильный процесс, поскольку это станет важным, когда веб-сайт будет полностью подключен к Сети и ограничит время простоя в будущем.
Комментарии:
1. Ознакомьтесь с CI CD для автоматизации сборки и развертывания: Azure Devops , Jenkins , Bitbucket , Appveyor и многие другие…
Ответ №1:
Прагматичный, простой для понимания способ с использованием лучших практик. Использование
- Git для системы контроля версий.
- Сервер CI, например: Jenkins CI, Azure DevOps и т.д.
когда вам нужно развернуть, вы нажимаете определенный тег git, затем Jenkins CI, создаете и развертываете то, что вы хотите. Конечно, Jenkins CI поможет вам настроить параметры настройки в соответствии с каждой средой (разработка, тестирование, производство).
Использование
dotnet clean
dotnet publish
поддержите процесс развертывания, повторного развертывания.
Для вас полезно несколько руководств:https://www.youtube.com/watch ?v = cyzn8v8dcB8
Комментарии:
1. Я уже использую GIT для управления версиями в Azure DevOps (я забыл упомянуть об этом, извините!), Поэтому я рассмотрю аспекты CI CD, которые он предоставляет, спасибо за помощь!