Bereitstellen von .NET-Apps auf ARM-Single-Board-Computern
Artikel
Die Bereitstellung von .NET-Apps auf Single-Board-Computern ist identisch mit der für andere Plattformen. Ihre App kann im eigenständigen oder frameworkabhängigen Bereitstellungsmodus ausgeführt werden. Jeder Ansatz bringt seine eigenen Vorteile mit sich. Weitere Informationen finden Sie in der Übersicht über die .NET-Anwendungsveröffentlichung.
Bereitstellen einer frameworkabhängigen App
Befolgen Sie diese Schritte, um Ihre App frameworkabhängig bereitzustellen:
Installieren Sie .NET auf dem Gerät mithilfe von dotnet-install-Skripts. Führen Sie folgende Schritte über eine Bash-Eingabeaufforderung auf dem Gerät (lokal oder SSH) durch:
Führen Sie den folgenden Befehl aus, um .NET zu installieren:
So wird die aktuelle Version installiert. Wenn Sie eine bestimmte Version benötigen, ersetzen Sie den Parameter --channel STS durch --version <VERSION>. Hierbei entspricht <VERSION> der jeweiligen Buildversion.
Sie können die Pfadauflösung vereinfachen, indem Sie die Umgebungsvariable DOTNET_ROOT und das Verzeichnis .dotnet mit den folgenden Befehlen zu $PATH hinzufügen:
Überprüfen Sie die .NET-Installation mit dem folgenden Befehl:
dotnet --version
Vergewissern Sie sich, dass die angezeigte Version der installierten Version entspricht.
Veröffentlichen Sie die App wie folgt auf dem Entwicklungscomputer. Dabei gibt es je nach Entwicklungsumgebung Unterschiede:
Wenn Sie Visual Studio verwenden, müssen Sie die App in einem lokalen Ordner bereitstellen. Wählen Sie vor der Veröffentlichung die Option Bearbeiten in der Zusammenfassung des Veröffentlichungsprofils aus, und wechseln Sie zur Registerkarte Einstellungen. Vergewissern Sie sich dort, dass der Bereitstellungsmodus auf Frameworkabhängig und die Zielruntime auf Portierbar festgelegt ist.
Verwenden Sie in der .NET-CLI den Befehl dotnet publish. Es sind keine zusätzlichen Argumente erforderlich.
Um zum Beispiel mit dem scp-Befehl Dateien vom Entwicklungscomputer auf den SBC zu kopieren, öffnen Sie eine Eingabeaufforderung und führen Sie den folgenden Befehl aus:
Die -r-Option weist scp an, Dateien rekursiv zu kopieren.
/publish-location/ ist der Ordner, in dem Sie im vorherigen Schritt veröffentlicht haben.
pi@raspberypi ist der Benutzer- und Hostname im Format <username>@<hostname>.
/home/pi/deployment-location/ ist der neue Ordner auf dem SBC.
Tipp
Aktuelle Versionen von Windows haben OpenSSH, das scp enthält, vorinstalliert.
Führen Sie die App über eine Bash-Eingabeaufforderung auf dem Raspberry Pi-Gerät (lokal oder SSH) aus. Legen Sie hierfür den Bereitstellungsordner als aktuelles Verzeichnis fest, und führen Sie den folgenden Befehl aus, bei dem HelloWorld.dll den Einstiegspunkt der App darstellt:
dotnet HelloWorld.dll
Bereitstellen einer eigenständigen App
Befolgen Sie diese Schritte, um eine eigenständige App bereitzustellen:
Veröffentlichen Sie die App wie folgt auf dem Entwicklungscomputer. Dabei gibt es je nach Entwicklungsumgebung Unterschiede:
Wenn Sie Visual Studio verwenden, müssen Sie die App in einem lokalen Ordner bereitstellen. Wählen Sie vor der Veröffentlichung die Option Bearbeiten in der Zusammenfassung des Veröffentlichungsprofils aus, und wechseln Sie zur Registerkarte Einstellungen. Vergewissern Sie sich dort, dass der Bereitstellungsmodus auf Eigenständig und die Zielruntime auf linux-arm64 festgelegt ist.
Verwenden Sie in der .NET-CLI den Befehl dotnet publish mit den Argumenten --runtime linux-arm64 und --self-contained:
Um zum Beispiel mit dem scp-Befehl Dateien vom Entwicklungscomputer auf den SBC zu kopieren, öffnen Sie eine Eingabeaufforderung und führen Sie den folgenden Befehl aus:
Die -r-Option weist scp an, Dateien rekursiv zu kopieren.
/publish-location/ ist der Ordner, in dem Sie im vorherigen Schritt veröffentlicht haben.
pi@raspberypi ist der Benutzer- und Hostname im Format <username>@<hostname>.
/home/pi/deployment-location/ ist der neue Ordner auf dem SBC.
Tipp
Aktuelle Versionen von Windows haben OpenSSH, das scp enthält, vorinstalliert.
Führen Sie die App über eine Bash-Eingabeaufforderung auf dem Gerät (lokal oder SSH) aus. Legen Sie hierfür das aktuelle Verzeichnis auf den Bereitstellungsort fest, und führen Sie die folgenden Schritte durch:
Erteilen Sie die execute-Berechtigung für ausführbare Dateien. Hierbei entspricht HelloWorld dem Namen der ausführbaren Datei.
chmod +x HelloWorld
Führen Sie die ausführbare Datei aus.
./HelloWorld
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.
Feedback zu .NET
.NET ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben:
Erstellen von End-to-End-Lösungen in Microsoft Azure zum Erstellen von Azure Functions-Lösungen, Implementieren und Verwalten von Web-Apps, Entwickeln von Lösungen mit Azure Storage u. v. m.