Möchte man eine Blazor Web App hosten, benötigt man das ASP.NET Runtime. Dieser Beitrag zeigt wie man .NET samt unserer Blazor App unter Plesk und Linux installiert, ganz ohne Windows Server oder IIS.
ASP.NET Core 9 unter Plesk & Linux installieren
Seit Plesk Obsidian 18.0.45 gibt es das kostenlose .NET Toolkit, welches ASP.NET Core nahtlos in Plesk integriert. So besteht die Möglichkeit mir relative wenig Code-Anpassungen aus einer Blazor MAUI App eine professionelle Cloud-Lösung zu bauen und diese selbst unter Linux zu hosten.
Zur Installation gehen wir wie folgt vor:
Wir wählen im Plesk Extensions-Catalog .NET Toolkit aus und starten die Installation:
ASP .NET Core 9 unter Linux installieren
Standardmässig wird ASP .NET Core 8 vorinstalliert. .NET 6 und 7 können optional zusätzlich installiert werden. Version 9 wird ab Plesk 18.0.66 unterstützt.
Für .NET Core 9 ist etwas zusätzliche Handarbeit im Terminal angesagt.
Hierzu installieren wir zuerst das entsprechende Repositorium:
1 |
sudo add-apt-repository ppa:dotnet/backports |
Danach installieren wir das .NET Core 9 Runtime. Das SDK wird nicht benötigt:
1 2 |
sudo apt-get update sudo apt-get install -y aspnetcore-runtime-9.0 |
Danach zeigt die Plesk Extension .NET Core 9 zusätzlich an:
Eine komplette ASP .NET Installations-Anleitung für verschiedene Linux-Versionen gibt es hier.
Blazor Web App auf Linux Server publizieren
Wir wechseln auf unseren lokalen Rechner und publizieren unsere App:
1 |
dotnet publish -c Release |
Die benötigten Dateien befinden sich anschliessend in
1 |
bin/Release/net9.0/publish |
Danach ersetzen wir alle Dateien auf unserem Webspace durch die im o.g. Ordner.
Als Nächstes wechseln wir in die Plesk .NET-Integration im Domain Dashboard von Plesk:
Im folgenden Dialog nehmen wir dann die entsprechenden Verknüpfungen vor, um unsere App startklar zu machen:
- Application URL: Die URL unserer App, hier die Subdomain dotnet.secserver.de.
- Application Root: Das Hauptverzeichnis der o.g. Subdomain mit den zuvor hochgeladenen Dateien.
- Document Root: Verweis auf den wwwroot-Ordner unserer .NET App.
- Application Startup File: Die Start-DLL entspricht dem Namen der App und der Endung “.dll”.
In unserem Beispiel heisst die App blazor-web-app, die Startdatei entsprechend blazor-web-app.dll. - Benötigt unsere App Environement-Variablen, so können diese Einstellungen hier ebenfalls vorgenommen werden.
Danach bestätigen wir den Dialog und unsere App kann im Browser aufgerufen werden.
Fazit
Das kostenlose Plesk .NET Toolkit vereinfacht zu einem extrem hohen Grad die Linux Integration von ASP .NET Core samt Deployment unserer Blazor Web App. Und das Ganz ohne Windows und IIS :-)