Delen via


Uw app implementeren in een map, IIS, Azure of een andere bestemming

Door een toepassing, service of onderdeel te implementeren, distribueert u deze voor installatie op andere computers, apparaten, servers of in de cloud. U kiest de juiste methode in Visual Studio voor het type implementatie dat u nodig hebt.

Hulp krijgen voor uw implementatietaak:

schermopname van Een nieuw publicatieprofiel maken.

schermopname van Een nieuw publicatieprofiel maken.

Kies vervolgens een implementatieoptie in het hulpprogramma Publiceren. Zie de volgende secties voor meer informatie over uw publicatieopties.

Welke publicatieopties zijn geschikt voor mij?

Vanuit Visual Studio kunnen toepassingen rechtstreeks worden gepubliceerd naar de volgende doelen:

De voorgaande opties worden weergegeven zoals wordt weergegeven in de volgende afbeelding wanneer u een nieuw publicatieprofiel maakt.

Schermopname van Kies een publicatieoptie.

Schermopname van een publicatieoptie kiezen.

Zie Eerste blik op implementatievoor een korte rondleiding langs meer algemene opties voor het implementeren van toepassingen.

Azuur

Wanneer u Azure kiest, kunt u kiezen tussen:

schermopname van Een Azure-service kiezen.

schermopname van Een Azure-service kiezen.

Azure Container Apps

Azure Container Apps- helpt ontwikkelaars bij het maken en beheren van in containers geplaatste webtoepassingen en -services.

Hoewel u een container-app in Azure App Service kunt implementeren, is Azure Container Apps geoptimaliseerd voor het efficiënter gebruiken van resources voor container-apps, zodat er kostenbesparingen en andere voordelen zijn van het gebruik van Azure Container Apps.

Wanneer kiest u Azure Container Apps?

  • Uw apps en services worden uitgevoerd in een container of meerdere containers
  • Je hebt hoge beschikbaarheid en flexibele schaalbaarheid nodig.
  • Uw app is een goede match voor een microservices-architectuurpatroon, waarbij de functionaliteit is onderverdeeld in een set modulaire één-taaksservices die doorgaans worden geïmplementeerd als Azure Functions. Bijvoorbeeld sets met services met één taak die als discrete taken worden uitgevoerd, reageren op gebeurtenissen of aanvragen van wachtrijen of triggers verwerken.
  • U wilt de voordelen van containerindeling (Kubernetes), maar u wilt Kubernetes niet rechtstreeks beheren. (Als u uitgebreide controle wilt over de Kubernetes-infrastructuur die ondersteuning biedt voor uw containerservices, kunt u overwegen om Azure Kubernetes Service (AKS) te gebruiken.

Azure App Service

Azure App Service- helpt ontwikkelaars snel schaalbare webtoepassingen en -services te maken zonder infrastructuur te onderhouden. Een App Service wordt uitgevoerd op in de cloud gehoste virtuele machines in Azure, maar deze virtuele machines worden voor u beheerd. Aan elke app in een App Service wordt een unieke *.azurewebsites.net-URL toegewezen; alle andere prijscategorieën dan Gratis staan het toewijzen van aangepaste domeinnamen aan de site toe.

U bepaalt hoeveel rekenkracht een App Service heeft door een prijscategorie of plan te kiezen voor de App Service. U kunt meerdere web-apps (en andere app-typen) dezelfde App Service delen zonder de prijscategorie te wijzigen. U kunt bijvoorbeeld web-apps voor ontwikkeling, fasering en productie samen hosten in dezelfde App Service.

Wanneer kiest u Azure App Service?

  • U wilt een webtoepassing implementeren die toegankelijk is via internet.
  • U wilt uw webtoepassing automatisch schalen op basis van de vraag zonder dat u deze opnieuw hoeft te implementeren.
  • U wilt geen serverinfrastructuur onderhouden (inclusief software-updates).
  • U hebt geen aanpassingen op computerniveau nodig op de servers waarop uw webtoepassing wordt gehost.

Als u Azure App Service wilt gebruiken in uw eigen datacenter of andere on-premises computers, kunt u dit doen met behulp van de Azure Stack.

Zie voor meer informatie over publiceren naar App Service:

Azure WebJobs

Azure WebJobs wordt ondersteund via App Service. Zie WebJobs ontwikkelen en implementeren met Visual Studio.

Wanneer kies ik Azure WebJobs?

  • U hebt een werkproces, een berekening die kan worden uitgevoerd zonder tussenkomst van de gebruiker.
  • De functie is op-afroep, geactiveerd door een gebeurtenis of doorlopend.
  • De taak wordt uitgevoerd in Windows of .NET Core op Linux (met Visual Studio 17.12 of hoger).

Een andere optie voor vergelijkbare scenario's is Azure Functions. Zie De juiste integratie- en automatiseringsservices kiezen in Azureom de juiste optie voor u te kiezen.

Azure Container Registry

Azure Container Registry kunt u Docker-containerinstallatiekopieën en -artefacten bouwen, opslaan en beheren in een privéregister voor alle typen containerimplementaties.

Wanneer kiest u Azure Container Registry?

  • Wanneer u een bestaande Docker-containerontwikkelings- en implementatiepijplijn hebt.
  • Wanneer u Docker-containerinstallatiekopieën wilt bouwen in Azure.

Voor meer informatie:

Virtuele Azure-machine

Azure Virtual Machines (VM's) kunt u een willekeurig aantal rekenresources in de cloud maken en beheren. Door de verantwoordelijkheid voor alle software en updates op de VM's te nemen, kunt u ze zo veel mogelijk aanpassen als nodig is voor uw toepassing. U hebt rechtstreeks toegang tot de virtuele machines via Extern bureaublad en elk apparaat onderhoudt het toegewezen IP-adres zo lang mogelijk.

Het schalen van een toepassing die op virtuele machines wordt gehost, omvat het instellen van extra VM's op basis van de vraag en het implementeren van de benodigde software. Met dit extra beheerniveau kunt u op een andere manier schalen in verschillende globale regio's. Als uw toepassing bijvoorbeeld werknemers in verschillende regionale kantoren bedient, kunt u uw VM's schalen op basis van het aantal werknemers in die regio's, waardoor de kosten mogelijk worden verlaagd.

Zie de gedetailleerde vergelijking tussen Azure App Service, Azure Virtual Machines en andere Azure-services die u als implementatiedoel kunt gebruiken met behulp van de optie Aangepast in Visual Studio voor meer informatie.

Wanneer kiest u virtuele Azure-machines?

  • U wilt een webtoepassing implementeren die toegankelijk is via internet, met volledige controle over de levensduur van toegewezen IP-adressen.
  • U hebt aanpassingen op computerniveau nodig op uw servers, waaronder aanvullende software, zoals een gespecialiseerd databasesysteem, specifieke netwerkconfiguraties, schijfpartities, enzovoort.
  • U wilt een nauwkeurig controleniveau over het schalen van uw webtoepassing.
  • U hebt om een andere reden directe toegang nodig tot de servers die als host fungeren voor uw toepassing.

Als u Virtuele Azure-machines in uw eigen datacenter of andere on-premises computers wilt gebruiken, kunt u dit doen met behulp van de Azure Stack-.

Docker-containerregister

Als uw toepassing Docker gebruikt, kunt u uw containertoepassing publiceren naar een Docker-containerregister.

Wanneer kiest u Docker Container Registry?

  • U wilt een containertoepassing implementeren

Zie het volgende voor meer informatie:

DevTest Labs

Gebruik de optie Mapimplementatie in het hulpprogramma Publiceren als u wilt implementeren in Azure DevTest Labs.

Zie App publiceren voor testen op een azure DevTest Labs-VMvoor volledige stappen. In het artikel waarnaar wordt verwezen zijn de publicatiestappen van toepassing op .NET Core/.NET 5+. De rest van de instructies zijn van toepassing op zowel .NET als .NET Framework. Voor .NET Framework ClickOnce-apps kunt u de Wizard Publiceren gebruiken om naar een map te publiceren.

Map

Implementeren in het bestandssysteem betekent dat u de bestanden van uw toepassing naar een specifieke map op uw eigen computer kopieert. Implementeren in een map wordt meestal gebruikt voor testdoeleinden of om de toepassing te implementeren voor gebruik door een beperkt aantal personen als de computer ook een server uitvoert. Als de doelmap wordt gedeeld op een netwerk, kan de implementatie in het bestandssysteem de webtoepassingsbestanden beschikbaar maken voor anderen die deze vervolgens op specifieke servers kunnen implementeren.

Vanaf Visual Studio 2019 16.8 bevat het mapdoel de mogelijkheid om een .NET Windows-toepassing te publiceren met ClickOnce.

Als u een .NET Windows-bureaubladproject (.NET Core 3.1, .NET 5 en hoger) met ClickOnce wilt publiceren, raadpleegt u Een .NET Windows-toepassing implementeren met ClickOnce.

Lokale computers waarop een server wordt uitgevoerd, kunnen uw toepassing beschikbaar maken via internet of een intranet, afhankelijk van hoe deze is geconfigureerd en de netwerken waarmee deze is verbonden. (Als u een computer rechtstreeks met internet verbindt, moet u er met name op letten dat u deze beschermt tegen externe beveiligingsrisico's.) Omdat u deze machines beheert, hebt u volledige controle over de software- en hardwareconfiguraties.

Als u om welke reden dan ook (zoals computertoegang) geen cloudservices zoals Azure App Service of Azure Virtual Machines kunt gebruiken, kunt u de Azure Stack- in uw eigen datacenter gebruiken. Met De Azure Stack kunt u rekenresources beheren en gebruiken via Azure App Service en Virtuele Machines van Azure, terwijl u alles on-premises houdt.

Wanneer u een bestandssysteemimplementatie kiest

  • U hoeft de toepassing alleen te implementeren op een bestandsshare van waaruit anderen deze op verschillende servers gaan implementeren.

  • U wilt een .NET Windows-toepassing implementeren met ClickOnce

  • U hebt alleen een lokale testimplementatie nodig.

  • U wilt de toepassingsbestanden onafhankelijk onderzoeken en wijzigen voordat u ze naar een ander implementatiedoel verzendt.

Zie Quickstart - Implementeren in een lokale mapvoor meer informatie.

Zie Een .NET Windows-toepassing implementeren met ClickOncevoor meer informatie over het implementeren van een .NET Windows-toepassing met ClickOnce.

Zie het volgende voor aanvullende hulp bij het kiezen van uw instellingen:

FTP/FTPS-server

Met een FTP-/FTPS-server kunt u uw toepassing implementeren op een andere server dan Azure. Het kan worden geïmplementeerd op een bestandssysteem of op een andere server (internet of intranet) waartoe u toegang hebt, met inbegrip van servers in andere cloudservices. Het kan werken met web-implementatie (bestanden of .ZIP) en FTP.

Wanneer u een FTP-/FTPS-server kiest, wordt u gevraagd om een profielnaam en verzamelt u vervolgens aanvullende Verbinding informatie, waaronder de doelserver of locatie, een sitenaam en referenties. U kunt het volgende gedrag beheren op het tabblad Instellingen:

  • De configuratie die u wilt implementeren.
  • Hiermee wordt aangegeven of bestaande bestanden van de bestemming moeten worden verwijderd.
  • Of er tijdens het publiceren vooraf moet worden gecompileerd.
  • Of u bestanden in de map App_Data wilt uitsluiten van implementatie.

U kunt een willekeurig aantal FTP-/FTPS-implementatieprofielen maken in Visual Studio, zodat u profielen met verschillende instellingen kunt beheren.

Wanneer moet u ftp-/FTPS-serverimplementatie kiezen

  • U gebruikt cloudservices op een andere provider dan Azure die toegankelijk is via URL's.
  • U wilt implementeren met andere referenties dan de referenties die u in Visual Studio gebruikt, of die rechtstreeks aan uw Azure-accounts zijn gekoppeld.
  • U wilt bestanden uit het doel verwijderen telkens wanneer u implementeert.

Webserver (IIS)

Met een IIS-webserver kunt u uw toepassing implementeren op een andere webserver dan Azure. Het kan worden geïmplementeerd op een IIS-server (internet of intranet) waartoe u toegang hebt, inclusief die in andere cloudservices. Het kan werken met Web Deploy of een Web Deploy-pakket.

Wanneer u een IIS-webserver kiest, vraagt Visual Studio u om een profielnaam en verzamelt u vervolgens aanvullende verbinding informatie, waaronder de doelserver of locatie, een sitenaam en referenties. U kunt het volgende gedrag beheren op het tabblad Instellingen:

  • De configuratie die u wilt implementeren.
  • Hiermee wordt aangegeven of bestaande bestanden van de bestemming moeten worden verwijderd.
  • Of er vooraf moet worden gecompileerd bij het publiceren.
  • Of u bestanden in de map App_Data wilt uitsluiten van implementatie.

U kunt een willekeurig aantal IIS-webserverimplementatieprofielen maken in Visual Studio, zodat u profielen met verschillende instellingen kunt beheren.

Wanneer moet u webserverimplementatie (IIS) kiezen

  • U gebruikt IIS om een site of service te publiceren die toegankelijk is via URL's.
  • U wilt implementeren met andere referenties dan de referenties die u in Visual Studio gebruikt, of die rechtstreeks aan uw Azure-accounts zijn gekoppeld.
  • U wilt bestanden uit het doel verwijderen telkens wanneer u implementeert.

Zie Quickstart - Implementeren op een websitevoor meer informatie.

Zie Problemen met ASP.NET Core in Azure App Service en IISoplossen voor hulp bij het oplossen van problemen met ASP.NET Core in IIS.

Importprofiel

U kunt een profiel importeren bij het publiceren naar IIS of Azure App Service. U kunt de implementatie configureren met een publicatie-instellingenbestand (*.publishsettings). Een publicatie-instellingenbestand wordt gemaakt door IIS of Azure App Service, of kan handmatig worden gemaakt en vervolgens worden geïmporteerd in Visual Studio.

Het gebruik van een publicatie-instellingenbestand kan de implementatieconfiguratie vereenvoudigen en werkt beter in een teamomgeving en het handmatig configureren van elk implementatieprofiel.

Wanneer u een importprofiel kiest

  • U publiceert naar IIS en u wilt de implementatieconfiguratie vereenvoudigen.
  • U publiceert naar IIS of Azure App Service en wilt de implementatieconfiguratie versnellen voor hergebruik of voor teamleden die publiceren naar dezelfde service.

Zie het volgende voor meer informatie:

.NET-implementatie-instellingen configureren

Zie het volgende voor aanvullende hulp bij het kiezen van uw instellingen:

Volgende stappen

Handleidingen