|
|
Опубликовано 12.12.2018 16:23:36
|
|
|

1Обзор 1.1 Цель статьи В этой статье знакомится с использованием сервисов разработки программного обеспечения (DevCloud) для завершения разработки веб-проекта на C# на примере. 1.2 Детали проекта
![]()
1. Название проекта: Сайт Super Cold Joke 2. Введение в проект: Веб-сайт, содержащий такие функции, как вход пользователя, регистрация и шутки для просмотра. 3. Язык программирования разработки: ASP.NET MVC5 (C#) 4. Тип проекта: веб-проект, основанный на архитектуре B/S ASP.NET 5. Среда развертывания: Windows + IIS + MySQL 6. Метод развертывания: развертывание Ansible + скрипт плейбука
![]()
В типичной системе с архитектурой B/S пользователь получает доступ к системе через Интернет, а клиент обрабатывает операции пользователя и читает или записывает данные в базу данных. 1.3 Магистральный процесс Основные процессы этой статьи включают: хостинг кода, компиляцию и сборку, релиз (библиотека релизов программного обеспечения) и развертывание. Разработчики используют сервисы хостинга кода для управления версиями после локальной разработки. После определённой разработки проекта его можно скомпилировать и собрать, а программный пакет можно собрать и архивировать через сервис релиза. Затем пакет развёртывается на сервере и получает доступ извне.
![]()
1.4 Предварительные требования 1. Зарегистрируйте аккаунт HUAWEI CLOUD: Зарегистрируйте аккаунт HUAWEI CLOUD на официальном сайте HUAWEI CLOUD, который применимо ко всем продуктам HUAWEI CLOUD. 2. ECS: ECS с публичным IP будет использоваться для развертывания (Windows Sever 2012).
2 Управление проектами 2.1 Создание проекта Существует два типа процессов разработки новых проектов: скрам-процесс и канбан-процесс. Процесс scrum — это стандартный гибкий процесс разработки, а иерархия рабочих элементов — традиционный метод разделения скрам-файлов Epic->Feature->Story->Task&Bug.
![]()
2.2 Создание итерации Цикл исследований и разработок этого проекта короткий, всего один релиз, разделённый на три этапа, цикл итерации длится одну неделю.
![]()
2.3 Отсортировать список требований к продукту Планирование проекта — это отображение иерархической структуры рабочих элементов в виде ментальной карты, более интуитивно увидеть отношения родитель-ребёнок; после создания нового задания в планировании проекта он автоматически генерируется на последующих страницах Epic, Feature, Backlog и итераций; перед началом итерации менеджер проекта интегрирует всю информацию о спросе, полученную от заказчика, в план проекта по одной, разложит её в историю и устанавливает приоритеты для работы.
![]()
3 кодВедущие 3.1 Создание репозитория Ø При создании нового репозитория кода выберите «Создать шаблон», введите имя репозитория, который был открыт в виде образца шаблона, в строку поиска и выберите шаблон. (Поиск «superjokes» здесь, выбор языка программирования ASP.NET)
![]()
Введите новое имя репозитория (которое может совпадать с именем репозитория шаблонов), чтобы создать репозиторий кода
![]()
Изменение пароля базы данных:(Обязательно, иначе развертывание не будет успешным) Измените appsettings.config в каталоге superjokes/src/Joke.Web/App_Data. Измените пароль в конфигурации базы данных (строка 33 Password=) на пароль базы данных на хосте, который будет развернут.
![]()
4 Сборка компиляции 4.1 Создание задачи на сборку Ø Создайте новую задачу, отметьте msbuild на экране «Выбрать шаблон сборки» и нажмите OK, чтобы завершить создание шаблона задачи. Перейдите на экран «Compile Build Tasks».
![]()
Ø Введите детали сборки Описание задачи, ветвь репозитория исходного кода и т.д. являются необязательными.
![]()
Ø Msbuild build Процесс сборки msbuild, использующий образ msbuild15-all
![]()
Введите команду:
![]()
Командные заметки: Поскольку путь файла SLN этого кода находится в каталоге /src, команда cd src выполняется первой в командной строке.
![]()
5 Релиз В этом проекте сервис публикации может загружать исполняемые файлы, сгенерированные сборкой, в репозиторий релизов для удобства управления пакетами. Ø Архивирование версий Соответствующие инструкции по сжатию были написаны в процессе сборки Msbuild. После указания пути к пакету сборки, номера версии релиза и имени пакета в шаге загрузки пакета в репозиторий релиза (среда Windows), вы можете загрузить собранный пакет в репозиторий релиза для автоматического управления версиями программного обеспечения.
![]()
6 Развертывание Цель задачи развертывания — развернуть собранный пакет на сервере, к которому мы можем получить доступ, и после успешного развертывания адрес можно получить доступ через браузер. Задача развертывания разделена на четыре части: кредит хоста, написание скриптов развертывания, конфигурация задачи и выполнение развертывания.
![]()
Поскольку веб-проект написан на C#, сервер должен быть Windows-сервером с эластичным IP-адресом. Перед тем как хост будет предоставлен, среда хоста должна быть настроена соответствующим образом. 6.1 Конфигурация среды хоста 1. Установите MySQL. 2. Сгенерировать базу данных MySQL на сервере с помощью скрипта конфигурации базы данных, который является superjokes.sql, расположенным в корневой директории репозитория кода.
![]()
6.2 Авторство ведущего Предоставьте серверный хост DevCloud для развертывания сайтов. 6.3 Развертывание скриптов Выполнять команды powershell через скрипты плейбука для развертывания проекта на IIS-сервисе сервера. Ø Получить скрипт развертывания Получите сценарий плейбука из корневой директории репозитория кода IIS-windows-1.0.zip и загрузите его в управление плейбуком в DevCloud. 6.4 Конфигурация задачи Ø Создать новую задачу развертывания без шаблона. Заполните имя задачи развертывания, выберите Ansible Deployment for Deployment Settings, выберите Custom Playbook для шаблона и выберите загруженный сценарий плейбука.
![]()
Затем выберите сервер для развертывания, установите порт, выберите пакет для развертывания и установите страницу по умолчанию для сайта.
![]()
Параметры плейбука подробно объясняются: webapps_path: путь развертывания пакета, путь на целевом хосте app_filename: Название пакета, используемого для развертывания
sitePort: 网站端口(提供一个目标主机上可访问的端口号)
SiteName: 网站名称,启动IIS服务时为该网站命名
SiteAppPoolsModel: Integrated 不必修改
managedRuntimeVersion: v4.0 不必修改
WebSitePath: IIS服务中网站源文件路径
IISLogFile: IIS服务中的日志存储路径 win_curl_path: Не нужно менять 6.5 Просмотр эффекта развертывания После выполнения задачи развертывания вы можете зайти на сайт через страницу http://ip: Port/Default
![]()
На данный момент мы завершили создание веб-проекта на C# на DevCloud.
|
Предыдущий:ASP.NET Оптимизация производительности MVC сайтаСледующий:Установите plugin elasticsearch-6.5.2 elasticsearch-head
|