Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Wdrażanie aplikacji platformy .NET na komputerach jednowarstwowych usługi ARM

Wdrażanie aplikacji platformy .NET na komputerach jednowarstwowych jest identyczne z wdrożeniem dowolnej innej platformy. Aplikacja może działać jako tryb wdrożenia samodzielnego lub zależnego od platformy. Każda strategia ma zalety. Aby uzyskać więcej informacji, zobacz Omówienie publikowania aplikacji platformy .NET.

Wdrażanie aplikacji zależnej od platformy

Animated GIF showing a diagram of framework-dependent deployment. The SDK creates the assemblies, which require the .NET runtime on the target device.

Aby wdrożyć aplikację jako aplikację zależną od platformy, wykonaj następujące kroki:

  1. Upewnij się, że protokół SSH jest włączony na urządzeniu. W przypadku urządzenia Raspberry Pi zapoznaj się z artykułem Konfigurowanie serwera SSH w dokumentacji urządzenia Raspberry Pi.

  2. Zainstaluj platformę .NET na urządzeniu przy użyciu skryptów dotnet-install. Wykonaj następujące kroki z poziomu monitu powłoki Bash na urządzeniu (lokalne lub SSH):

    1. Uruchom następujące polecenie, aby zainstalować platformę .NET:

      Bash
      curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel STS
      

      Uwaga

      Spowoduje to zainstalowanie najnowszej wersji. Jeśli potrzebujesz określonej wersji, zastąp --channel STS --version <VERSION>parametr parametrem , gdzie <VERSION> jest konkretną wersją kompilacji.

    2. Aby uprościć rozpoznawanie ścieżek, dodaj zmienną DOTNET_ROOT środowiskową i dodaj katalog .dotnet do polecenia $PATH za pomocą następujących poleceń:

      Bash
      echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
      echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc
      source ~/.bashrc
      
    3. Sprawdź instalację platformy .NET za pomocą następującego polecenia:

      .NET CLI
      dotnet --version
      

      Sprawdź, czy wyświetlona wersja jest zgodna z zainstalowaną wersją.

  3. Opublikuj aplikację na komputerze dewelopera w następujący sposób, w zależności od środowiska programistycznego.

    • W przypadku korzystania z programu Visual Studio wdróż aplikację w folderze lokalnym. Przed opublikowaniem wybierz pozycję Edytuj w podsumowaniu profilu publikowania i wybierz kartę Ustawienia. Upewnij się, że tryb wdrażania jest ustawiony na środowisko uruchomieniowe zależne od platformy, a dla środowiska uruchomieniowego docelowego ustawiono wartość Portable.
    • Jeśli używasz interfejsu wiersza polecenia platformy .NET, użyj polecenia dotnet publish. Nie są wymagane żadne dodatkowe argumenty.
  4. Za pomocą klienta SFTP, takiego jak scp, skopiuj pliki z lokalizacji publikowania na komputerze dewelopera do nowego folderu na SBC.

    Aby na przykład użyć scp polecenia , aby skopiować pliki z komputera deweloperskiego do SBC, otwórz wiersz polecenia i wykonaj następujące polecenie:

    Console
    scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
    

    Gdzie:

    • Opcja -r instruuje scp kopiowanie plików rekursywnie.
    • /publish-location/ to folder opublikowany w poprzednim kroku.
    • pi@raspberypi to nazwa użytkownika i hosta w formacie <username>@<hostname>.
    • /home/pi/deployment-location/ to nowy folder na SBC.

    Porada

    Najnowsze wersje systemu Windows mają protokół OpenSSH, który obejmuje scpprogram , wstępnie zainstalowany.

  5. W wierszu polecenia powłoki Bash na urządzeniu Raspberry Pi (lokalnym lub SSH) uruchom aplikację. W tym celu ustaw folder wdrożenia jako bieżący katalog i wykonaj następujące polecenie (gdzie HelloWorld.dll jest punktem wejścia aplikacji):

    .NET CLI
    dotnet HelloWorld.dll
    

Wdrażanie aplikacji samodzielnej

Animated GIF showing a diagram of self-contained deployment. The SDK creates the assemblies bundled with the .NET runtime. Consequently, there are no dependencies required on the target device.

Aby wdrożyć aplikację jako aplikację samodzielną, wykonaj następujące kroki:

  1. Upewnij się, że protokół SSH jest włączony na urządzeniu. W przypadku urządzenia Raspberry Pi zapoznaj się z artykułem Konfigurowanie serwera SSH w dokumentacji urządzenia Raspberry Pi.

  2. Opublikuj aplikację na komputerze dewelopera w następujący sposób, w zależności od środowiska programistycznego.

    • W przypadku korzystania z programu Visual Studio wdróż aplikację w folderze lokalnym. Przed opublikowaniem wybierz pozycję Edytuj w podsumowaniu profilu publikowania i wybierz kartę Ustawienia. Upewnij się, że tryb wdrażania jest ustawiony na wartość Self-contained (Samodzielny), a środowisko uruchomieniowe docelowe jest ustawione na linux-arm64.

    • Jeśli używasz interfejsu wiersza polecenia platformy .NET, użyj polecenia dotnet publish z --runtime linux-arm64 argumentami i --self-contained :

      .NET CLI
      dotnet publish --runtime linux-arm64 --self-contained
      

    Ważne

    Jeśli używasz 32-bitowego systemu operacyjnego, musisz kierować środowisko linux-arm uruchomieniowe.

  3. Za pomocą klienta SFTP, takiego jak scp, skopiuj pliki z lokalizacji publikowania na komputerze dewelopera do nowego folderu na SBC.

    Aby na przykład użyć scp polecenia , aby skopiować pliki z komputera deweloperskiego do SBC, otwórz wiersz polecenia i wykonaj następujące polecenie:

    Console
    scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
    

    Gdzie:

    • Opcja -r instruuje scp kopiowanie plików rekursywnie.
    • /publish-location/ to folder opublikowany w poprzednim kroku.
    • pi@raspberypi to nazwa użytkownika i hosta w formacie <username>@<hostname>.
    • /home/pi/deployment-location/ to nowy folder na SBC.

    Porada

    Najnowsze wersje systemu Windows mają protokół OpenSSH, który obejmuje scpprogram , wstępnie zainstalowany.

  4. W wierszu polecenia powłoki Bash na urządzeniu (lokalnym lub SSH) uruchom aplikację. W tym celu ustaw bieżący katalog na lokalizację wdrożenia i wykonaj następujące kroki:

    1. Nadaj wykonywalne uprawnienie do wykonywania (gdzie HelloWorld jest nazwą pliku wykonywalnego).

      Bash
      chmod +x HelloWorld
      
    2. Uruchom plik wykonywalny.

      Bash
      ./HelloWorld