Delen via


Een cloudservice publiceren met Visual Studio

Notitie

Dit artikel is van toepassing op Azure Azure Cloud Services (uitgebreide ondersteuning). Cloud Services (klassiek) wordt vanaf 31 augustus 2024 buiten gebruik gesteld. Voor meer informatie, zie Cloudservices (klassiek) implementatiemodel dat op 31 augustus 2024buiten gebruik wordt gesteld. Voor nieuwe ontwikkeling raden we u aan een nieuwer servicetype te gebruiken dat is ontworpen voor uw specifieke doel, zoals Azure App Service-, Azure Functionsof Azure Container Apps. Zie Directory van Azure-productenvoor de meest recente lijst met beschikbare services.

Visual Studio kan een toepassing rechtstreeks naar Azure publiceren, met ondersteuning voor faserings- en productieomgevingen van een cloudservice. Bij het publiceren selecteert u de implementatieomgeving en een opslagaccount dat tijdelijk wordt gebruikt voor het implementatiepakket.

Wanneer u een Azure-toepassing ontwikkelt en test, kunt u Web Deploy gebruiken om wijzigingen incrementeel te publiceren voor uw webrollen. Nadat u uw toepassing naar een implementatieomgeving hebt gepubliceerd, kunt u met Web Deploy wijzigingen rechtstreeks implementeren op de virtuele machine waarop de webrol wordt uitgevoerd. U hoeft uw hele Azure-toepassing niet te verpakken en te publiceren telkens wanneer u uw webrol wilt bijwerken om de wijzigingen te testen. Met deze aanpak kunt u uw webrolwijzigingen in de cloud beschikbaar hebben voor testen zonder te wachten tot uw toepassing is gepubliceerd in een implementatieomgeving.

Gebruik de volgende procedures om uw Azure-toepassing te publiceren en een webrol bij te werken met behulp van Web Deploy:

  • Een Azure-toepassing publiceren of verpakken vanuit Visual Studio
  • Een webrol bijwerken als onderdeel van de ontwikkelings- en testcyclus

Voorwaarden

Een Azure-toepassing publiceren of verpakken vanuit Visual Studio

Wanneer u uw Azure-toepassing publiceert, kunt u een van de volgende taken uitvoeren:

  • Een servicepakket maken: u kunt dit pakket en het serviceconfiguratiebestand gebruiken om uw toepassing te publiceren naar een implementatieomgeving vanuit de Azure-portal.

  • Uw Azure-project publiceren vanuit Visual Studio: als u uw toepassing rechtstreeks naar Azure wilt publiceren, gebruikt u de wizard Publiceren. Zie voor meer informatie Azure-toepassing publiceren Wizard.

Een servicepakket maken vanuit Visual Studio

  1. Wanneer u klaar bent om uw toepassing te publiceren, opent u Solution Explorer, opent u het snelmenu voor het Azure-project met uw rollen en kiest u Publiceren.

  2. Voer de volgende stappen uit om alleen een servicepakket te maken:

    1. Kies in het snelmenu voor het Azure-project Pakket.

    2. Kies in het dialoogvenster Package Azure Application de serviceconfiguratie waarvoor u een pakket wilt maken en kies vervolgens de buildconfiguratie.

    3. (Optioneel) Als u Extern bureaublad wilt inschakelen voor de cloudservice nadat u deze hebt gepubliceerd, selecteert u Extern bureaublad inschakelen voor alle rollenen selecteert u vervolgens Instellingen om referenties voor Extern bureaublad te configureren. Zie Verbinding met extern bureaublad inschakelen voor een rol in Azure Cloud Services met behulp van Visual Studiovoor meer informatie.

    4. Als u het pakket wilt maken, kiest u de koppeling Pakket.

      Verkenner toont de bestandslocatie van het zojuist gemaakte pakket. U kunt deze locatie kopiëren zodat u deze kunt gebruiken vanuit Azure Portal.

    5. Als u dit pakket naar een implementatieomgeving wilt publiceren, moet u deze locatie gebruiken als pakketlocatie wanneer u een cloudservice maakt en dit pakket implementeert in een omgeving met Azure Portal.

  3. (Optioneel) Als u het implementatieproces wilt annuleren, kiest u in het snelmenu voor het regelitem in het activiteitenlogboek Annuleren en verwijdert u. Met deze opdracht wordt het implementatieproces gestopt en wordt de implementatieomgeving uit Azure verwijderd. Als u de omgeving na de implementatie wilt verwijderen, gebruikt u Azure Portal.

Een webrol bijwerken als onderdeel van de ontwikkelings- en testcyclus

Als de back-endinfrastructuur van uw app stabiel is, maar de webrollen vaker moeten worden bijgewerkt, kunt u Web Deploy gebruiken om alleen een webrol in uw project bij te werken. Web Deploy is handig wanneer u de back-endwerkrollen niet opnieuw wilt bouwen en opnieuw wilt implementeren, of als u meerdere webrollen hebt en u slechts één van de webrollen wilt bijwerken.

Vereisten voor het gebruik van Web Deploy

  • Alleen voor ontwikkelings- en testdoeleinden: De wijzigingen worden rechtstreeks aangebracht op de virtuele machine waarop de webrol wordt uitgevoerd. Als deze virtuele machine moet worden gerecycled, gaan de wijzigingen verloren omdat het oorspronkelijke pakket dat u hebt gepubliceerd, wordt gebruikt om de virtuele machine voor de rol opnieuw te maken. Publiceer uw toepassing opnieuw om de meest recente wijzigingen voor de webrol op te halen.

  • Alleen webrollen kunnen worden bijgewerkt: Werkrol kan niet worden bijgewerkt. Bovendien kunt u de RoleEntryPoint niet bijwerken in web role.cs.

  • Kan slechts één exemplaar van een webrol ondersteunen: U kunt niet meerdere exemplaren van een webrol in uw implementatieomgeving hebben. Meerdere webrollen met slechts één exemplaar worden echter ondersteund.

  • Extern bureaubladverbindingen inschakelen: Met deze vereiste kan Web Deploy de gebruiker en het wachtwoord gebruiken om verbinding te maken met de virtuele machine om de wijzigingen te implementeren op de server waarop Internet Information Services (IIS) wordt uitgevoerd. Daarnaast moet u mogelijk verbinding maken met de virtuele machine om een vertrouwd certificaat toe te voegen aan IIS op deze virtuele machine. (Dit certificaat zorgt ervoor dat de externe verbinding voor IIS die wordt gebruikt door Web Deploy veilig is.)

In de volgende procedure wordt ervan uitgegaan dat u de wizard Azure-toepassing publiceren gebruikt.

Web deploy inschakelen wanneer u uw toepassing publiceert

Notitie

Web Deploy wordt niet ondersteund voor Azure Cloud Services (uitgebreide ondersteuning).

  1. Als u de optie Web deploy inschakelen voor alle webrollen wilt inschakelen, moet u eerst verbindingen met extern bureaublad configureren. Selecteer Inschakelen Extern bureaublad voor alle rollen en geef de inloggegevens op die worden gebruikt om extern verbinding te maken in het Remote Desktop Configuration vak dat wordt weergegeven. Zie Verbinding met extern bureaublad inschakelen voor een rol in Azure Cloud Services (uitgebreide ondersteuning) met behulp van Visual Studio.

  2. Als u Web Deploy wilt inschakelen voor alle webrollen in uw toepassing, selecteert u Web Deploy inschakelen voor alle webrollen.

    Er wordt een gele waarschuwingsdriehoek weergegeven. Web Deploy maakt standaard gebruik van een niet-vertrouwd, zelfondertekend certificaat, dat niet wordt aanbevolen voor het uploaden van gevoelige gegevens. Als u dit proces voor gevoelige gegevens wilt beveiligen, kunt u een SSL-certificaat toevoegen dat moet worden gebruikt voor Web Deploy-verbindingen. Dit certificaat moet een vertrouwd certificaat zijn. Zie Web deploy beveiligenvoor meer informatie.

  3. Kies Volgende om het scherm Samenvatting weer te geven en kies vervolgens publiceren om de cloudservice te implementeren.

    De cloudservice wordt gepubliceerd. Op de virtuele machine die wordt gemaakt, zijn externe verbindingen ingeschakeld voor IIS, zodat Web Deploy kan worden gebruikt om uw webrollen bij te werken zonder ze opnieuw te publiceren.

    Notitie

    Als u meer dan één exemplaar hebt geconfigureerd voor een webrol, wordt er een waarschuwingsbericht weergegeven waarin wordt aangegeven dat elke webrol is beperkt tot slechts één exemplaar in het pakket dat is gemaakt om uw toepassing te publiceren. Selecteer OK- om door te gaan. Zoals aangegeven in de sectie Vereisten, kunt u meer dan één webrol hebben, maar slechts één exemplaar van elke rol.

Uw webrol bijwerken met behulp van Web Deploy

  1. Als u Web Deploy wilt gebruiken, moet u codewijzigingen aanbrengen in het project voor een van uw webrollen in Visual Studio die u wilt publiceren. Klik vervolgens met de rechtermuisknop op dit projectknooppunt in uw oplossing en wijs Publicerenaan. Het dialoogvenster Web publiceren wordt weergegeven.

  2. (Optioneel) Als u een vertrouwd SSL-certificaat hebt toegevoegd dat moet worden gebruikt voor externe verbindingen voor IIS, schakelt u het selectievakje Niet-vertrouwd certificaat toestaan uit. Zie de sectie To Make Web Deploy Secure verderop in dit artikel voor meer informatie over het toevoegen van een certificaat om Web Deploy veilig te maken.

  3. Als u Web Deploy wilt gebruiken, heeft het publicatiemechanisme de gebruikersnaam en het wachtwoord nodig die u hebt ingesteld voor uw verbinding met Extern bureaublad wanneer u het pakket voor het eerst hebt gepubliceerd.

    1. Voer in gebruikersnaamde gebruikersnaam in.

    2. Voer in wachtwoordhet wachtwoord in.

    3. (Optioneel) Als u dit wachtwoord in dit profiel wilt opslaan, kiest u Wachtwoord opslaan.

  4. Als u de wijzigingen in uw webrol wilt publiceren, kiest u Publiceren.

    De statusregel geeft aan dat Publicatie gestart is. Wanneer de publicatie is voltooid, wordt Publiceren gelukt weergegeven. De wijzigingen zijn nu geïmplementeerd in de webrol op uw virtuele machine. U kunt nu uw Azure-toepassing starten in de Azure-omgeving om uw wijzigingen te testen.

Web implementeren veilig maken

  1. Web Deploy maakt standaard gebruik van een niet-vertrouwd, zelfondertekend certificaat, dat niet wordt aanbevolen voor het uploaden van gevoelige gegevens. Als u dit proces voor gevoelige gegevens wilt beveiligen, kunt u een SSL-certificaat toevoegen dat moet worden gebruikt voor Web Deploy-verbindingen. Dit certificaat moet een vertrouwd certificaat zijn dat u verkrijgt van een certificeringsinstantie (CA).

    Als u Web Deploy veilig wilt maken voor elke virtuele machine voor elk van uw webrollen, moet u het vertrouwde certificaat uploaden dat u wilt gebruiken voor web-implementatie in Azure Portal. Dit certificaat zorgt ervoor dat het certificaat wordt toegevoegd aan de virtuele machine die is gemaakt voor de webrol wanneer u uw toepassing publiceert.

  2. Als u een vertrouwd SSL-certificaat wilt toevoegen aan IIS om te gebruiken voor externe verbindingen, voert u de volgende stappen uit:

    1. Als u verbinding wilt maken met de virtuele machine waarop de webrol wordt uitgevoerd, selecteert u het exemplaar van de webrol in Cloud Explorer- of Server Exploreren kiest u vervolgens de opdracht Verbinding maken met behulp van Extern bureaublad. Zie Verbinding met extern bureaublad inschakelen voor een rol in Azure Cloud Services (uitgebreide ondersteuning) met behulp van Visual Studiovoor gedetailleerde stappen over het maken van verbinding met de virtuele machine. In uw browser wordt u gevraagd een .rdp-bestand te downloaden.

    2. Als u een SSL-certificaat wilt toevoegen, opent u de beheerservice in IIS Manager. In IIS Manager SSL inschakelen door de koppeling Bindingen te openen in het deelvenster Actie. Het dialoogvenster Sitebinding toevoegen wordt weergegeven. Kies toevoegen en kies vervolgens HTTPS in de vervolgkeuzelijst Type. Kies in de lijst SSL-certificaat het SSL-certificaat dat u hebt ondertekend door een CA en die u hebt geüpload naar Azure Portal. Zie Verbindingsinstellingen configureren voor de Beheerservicevoor meer informatie.

      Notitie

      Als u een vertrouwd SSL-certificaat toevoegt, wordt het gele waarschuwingsdriehoekje niet meer weergegeven in de Wizard Publiceren.

Bestanden opnemen in het servicepakket

Mogelijk moet u specifieke bestanden in uw servicepakket opnemen, zodat deze beschikbaar zijn op de virtuele machine die voor een rol is gemaakt. U kunt bijvoorbeeld een .exe of een .msi-bestand toevoegen dat wordt gebruikt door een opstartscript aan uw servicepakket. Het kan zijn dat u een assembly moet toevoegen die een webrol- of werkrolproject vereist. Als u bestanden wilt opnemen, moeten ze worden toegevoegd aan de oplossing voor uw Azure-toepassing.

  1. Als u een assembly wilt toevoegen aan een servicepakket, gebruikt u de volgende stappen:

    1. In Solution Exploreropent u het projectknooppunt voor het project dat de verwijzende assembly mist.

    2. Als u de assembly aan het project wilt toevoegen, opent u het snelmenu voor de map Verwijzingen en kiest u vervolgens Verwijzing toevoegen. Het dialoogvenster Verwijzing toevoegen wordt weergegeven.

    3. Kies de verwijzing die u wilt toevoegen en kies vervolgens OK. De verwijzing wordt toegevoegd aan de lijst onder de map Verwijzingen.

    4. Open het snelmenu voor de samenstelling die u hebt toegevoegd en kies Eigenschappen. Het venster Eigenschappen wordt weergegeven.

      Om deze assembly op te nemen in het servicepakket, selecteert u in de lijst Copy Localde optie True.

  2. Open in Solution Explorer het projectknooppunt voor het project dat de verwezen assembly mist.

  3. Als u de assembly aan het project wilt toevoegen, opent u het snelmenu voor de map Verwijzingen en kiest u vervolgens Verwijzing toevoegen. Het dialoogvenster Verwijzing toevoegen wordt weergegeven.

  4. Kies de verwijzing die u wilt toevoegen en kies vervolgens de knop OK.

    De verwijzing wordt toegevoegd aan de lijst onder de map Verwijzingen.

  5. Open het snelmenu voor de samenstelling die u hebt toegevoegd en kies Eigenschappen. Het venster Eigenschappen wordt weergegeven.

  6. Als u deze assembly wilt opnemen in het servicepakket, kiest u in de lijst Kopieer lokaal de optie Ja.

  7. Als u bestanden wilt opnemen in het servicepakket dat is toegevoegd aan uw webrolproject, opent u het snelmenu voor het bestand en kiest u vervolgens Eigenschappen. Kies in het venster EigenschappenInhoud in de keuzelijst Actie maken.

  8. Als u bestanden wilt opnemen in het servicepakket dat is toegevoegd aan uw werkrolproject, opent u het snelmenu voor het bestand en kiest u vervolgens Eigenschappen. Selecteer in het venster EigenschappenKopiëren als nieuwer in het Kopiëren naar uitvoermap lijstvak.

Zie Wizard Azure-toepassing publicerenvoor meer informatie over publiceren naar Azure vanuit Visual Studio.