|
|
Geplaatst op 12-12-2018 16:23:36
|
|
|

1Overzicht 1.1 Doel van het artikel Dit artikel introduceert hoe je softwareontwikkelingsdiensten (DevCloud) kunt gebruiken om de ontwikkeling van een C#-webproject te voltooien aan de hand van een voorbeeld. 1.2 Projectdetails
![]()
1. Projectnaam: Super Cold Joke Website 2. Projectintroductie: Een website die functies bevat zoals gebruikerslogin en registratie en het browsen van grappen. 3. Ontwikkelingsprogrammeertaal: ASP.NET MVC5 (C#) 4. Projecttype: Webproject gebaseerd op ASP.NET B/S-architectuur 5. Implementatieomgeving: Windows + IIS + MySql 6. Deploymentmethode: Ansible deployment + playbook script
![]()
In een typisch B/S-architectuursysteem krijgt de gebruiker toegang tot het systeem via het internet, en de client verwerkt de bewerkingen van de gebruiker en leest of schrijft data naar de database. 1.3 Ruggengraatproces De belangrijkste processen van dit artikel zijn: codehosting, compilatie en build, release (softwarereleasebibliotheek) en deployment. Ontwikkelaars gebruiken code-hostingdiensten voor versiebeheer na lokale ontwikkeling. Nadat het project tot op zekere hoogte is ontwikkeld, kan het worden gecompileerd en gebouwd, en kan het softwarepakket worden gebouwd en gearchiveerd via de release-service. Het pakket wordt vervolgens op de server uitgebracht en extern benaderd.
![]()
1.4 Vereisten 1. Registreer een HUAWEI CLOUD-account: Registreer een HUAWEI CLOUD-account op de officiële website van HUAWEI CLOUD, die van toepassing is op alle HUAWEI CLOUD-producten. 2. ECS: ECS met publiek IP zal worden gebruikt voor de implementatie (Windows Sever 2012).
2 Projectmanagement 2.1 Een project aanmaken Er zijn twee soorten ontwikkelingsprocessen voor nieuwe projecten: scrumproces en Kanban-proces. Het scrumproces is een standaard agile ontwikkelproces, en de werkitemhiërarchie is de traditionele scrum-divisiemethode Epic->Feature->Story->Task&Bug.
![]()
2.2 Maak een iteratie De R&D-cyclus van dit project is kort, met slechts één release, verdeeld in drie iteraties, en de iteratiecyclus duurt één week.
![]()
2.3 Sorteer de lijst met productvereisten Projectplanning is het tonen van de hiërarchische structuur van werkitems in de vorm van een mindmap, het intuïtiever bekijken van de ouder-kindrelatie; na het aanmaken van een nieuw werkitem in de projectplanning wordt het automatisch gegenereerd naar latere Epic-, Feature-, Backlog- en iteratiepagina's, voordat de iteratie begint, zal de projectmanager alle vraaginformatie die van de klant is verkregen één voor één in het projectplan implementeren, deze ontleden tot een verhaal en prioriteiten stellen voor het werkitem.
![]()
3 codePresentatie 3.1 Maak een repository aan Ø Bij het aanmaken van een nieuwe coderepository selecteer je "Create Template", voer je de naam in van de repository die als voorbeeldtemplate is blootgesteld in het zoekvak, en selecteer je de template. (Zoek hier op "superjokes", programmeertaalselectie ASP.NET)
![]()
Voer de nieuwe repositorynaam in (die dezelfde naam kan zijn als de templaterepository) om een coderepository te maken
![]()
Wijziging van databasewachtwoord:(Vereist, anders zal de inzet niet succesvol zijn) Pas de appsettings.config aan in de superjokes/src/Joke.Web/App_Data map. Verander het wachtwoord in de databaseconfiguratie (regel 33 Wachtwoord=) naar het databasewachtwoord van de host die te deployeren is.
![]()
4 Compileer-build 4.1 Maak een build-taak aan Ø Maak een nieuwe taak aan, vink msbuild aan op het scherm "Selecteer Bouwsjabloon" en klik op OK om het aanmaken van de taaksjabloon af te ronden. Spring naar het scherm "Build Taken compileren".
![]()
Ø Voer de bouwdetails in Taakbeschrijving, broncode-repository-branch, enzovoort zijn optioneel.
![]()
Ø Msbuild build Msbuild buildproces, met gebruik van de image msbuild15-all
![]()
Voer het commando in:
![]()
Commandonotities: Omdat het SLN-bestandspad van dit codeproject zich in de /src-map bevindt, wordt het cd src-commando eerst uitgevoerd op de opdrachtregel.
![]()
5 Uitgebracht In dit project kan de publicatieservice de uitvoerbare bestanden die door de build zijn gegenereerd uploaden naar de release repository voor eenvoudig pakketbeheer. Ø Versiearchivering De bijbehorende compressie-instructies zijn geschreven tijdens het Msbuild-bouwproces. Na het specificeren van het pad van het buildpakket, het versienummer van de release en de pakketnaam in de stap Upload package to release repository (Windows-omgeving), kun je het gebouwde pakket uploaden naar de release repository voor automatisch softwareversiebeheer.
![]()
6 Inzet Het doel van de deployment-taak is om het gebouwde pakket te deployen naar een server die we kunnen benaderen, en zodra de implementatie succesvol is, kan het adres via een browser worden benaderd. De deployment-taak is verdeeld in vier delen: namelijk hostcredit, het schrijven van deploymentscripts, taakconfiguratie en het uitvoeren van deployment.
![]()
Omdat het webproject in C# is geschreven, moet de server een Windows-server zijn met een elastisch IP-adres. Voordat de host wordt toegekend, moet de hostomgeving dienovereenkomstig worden geconfigureerd. 6.1 Configuratie van de hostomgeving 1. MySQL installeren. 2. Genereer een MySQL-database op de server met behulp van het databaseconfiguratiescript, dat een superjokes.sql is die zich bevindt in de rootmap van de coderepository.
![]()
6.2 Presentatorencredit Ken de serverhost toe aan DevCloud voor het deployen van websites. 6.3 Scripts uitrollen Voer PowerShell-commando's uit via playbook-scripts om het project uit te rollen naar de IIS-service van de server. Ø Haal het deployment-script Haal het playbook-script uit de rootmap van de coderepository IIS-windows-1.0.zip en upload het naar het playbook-beheer in DevCloud. 6.4 Taakconfiguratie Ø Maak een nieuwe niet-template deployment taak. Vul de naam van de deployment task in, selecteer Ansible Deployment for Deployment Settings, selecteer Custom Playbook voor het sjabloon en selecteer het playbook-script dat je hebt geüpload.
![]()
Selecteer vervolgens de server om te deployen, stel de poort in, selecteer het pakket om te deployen en stel de standaardpagina voor de website in.
![]()
Playbook-parameters in detail uitgelegd: webapps_path: Het pakket-deploymentpad, het pad op de doelhost app_filename: De naam van het pakket dat voor de implementatie wordt gebruikt
sitePort: 网站端口(提供一个目标主机上可访问的端口号)
SiteName: 网站名称,启动IIS服务时为该网站命名
SiteAppPoolsModel: Integrated 不必修改
managedRuntimeVersion: v4.0 不必修改
WebSitePath: IIS服务中网站源文件路径
IISLogFile: IIS服务中的日志存储路径 win_curl_path: Geen aanpassing nodig 6.5 Bekijk het uitroleffect Nadat de deployment-taak is uitgevoerd, kun je de website openen via de pagina http://ip: Port/Default
![]()
Op dit punt hebben we de bouw van het C#-webproject op DevCloud afgerond.
|
Vorig:ASP.NET MVC-websiteprestatieoptimalisatieVolgend:Installeer de elasticsearch-6.5.2 elasticsearch-head plugin
|