Menyebarkan aplikasi .NET di komputer single-board ARM

Penyebaran aplikasi .NET ke komputer papan tunggal identik dengan platform lain. Aplikasi Anda dapat berjalan sebagai mode penyebaran mandiri atau tergantung kerangka kerja. Ada keuntungan untuk setiap strategi. Untuk informasi selengkapnya, lihat Gambaran umum penerbitan aplikasi .NET.

Menyebarkan aplikasi yang bergantung pada kerangka kerja

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

Untuk menyebarkan aplikasi Anda sebagai aplikasi yang bergantung pada kerangka kerja, selesaikan langkah-langkah berikut:

  1. Pastikan SSH diaktifkan di perangkat Anda. Untuk Raspberry Pi, lihat Menyiapkan SSH Server dalam dokumentasi Raspberry Pi.

  2. Instal .NET pada perangkat menggunakan skrip dotnet-install. Selesaikan langkah-langkah berikut dari prompt Bash di perangkat (lokal atau SSH):

    1. Jalankan perintah berikut untuk menginstal .NET:

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

      Catatan

      Ini menginstal versi terbaru. Jika Anda memerlukan versi tertentu, ganti --channel STS parameter dengan --version <VERSION>, di mana <VERSION> adalah versi build tertentu.

    2. Untuk menyederhanakan resolusi jalur, tambahkan DOTNET_ROOT variabel lingkungan dan tambahkan direktori .dotnet ke $PATH dengan perintah berikut:

      echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
      echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc
      source ~/.bashrc
      
    3. Verifikasi penginstalan .NET dengan perintah berikut:

      dotnet --version
      

      Verifikasi versi yang ditampilkan cocok dengan versi yang Anda instal.

  3. Terbitkan aplikasi di komputer pengembangan sebagai berikut, tergantung pada lingkungan pengembangan.

    • Jika menggunakan Visual Studio, sebarkan aplikasi ke folder lokal. Sebelum menerbitkan, pilih Edit di ringkasan profil penerbitan dan pilih tab Pengaturan. Pastikan mode Penyebaran diatur ke Dependen Kerangka Kerja dan Runtime target diatur ke Portabel.
    • Jika menggunakan .NET CLI, gunakan perintah terbitkan dotnet. Tidak diperlukan argumen tambahan.
  4. Menggunakan klien SFTP seperti scp, salin file dari lokasi penerbitan di komputer pengembangan ke folder baru di SBC.

    Misalnya, untuk menggunakan scp perintah untuk menyalin file dari komputer pengembangan ke SBC Anda, buka prompt perintah dan jalankan yang berikut:

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

    Mana:

    • Opsi -r ini menginstruksikan scp untuk menyalin file secara rekursif.
    • /publish-location/ adalah folder yang Anda terbitkan di langkah sebelumnya.
    • pi@raspberypi adalah nama pengguna dan host dalam format <username>@<hostname>.
    • /home/pi/deployment-location/ adalah folder baru di SBC.

    Tip

    Versi terbaru Windows memiliki OpenSSH, yang mencakup scp, pra-instal.

  5. Dari prompt Bash pada Raspberry Pi (lokal atau SSH), jalankan aplikasi. Untuk melakukan ini, atur folder penyebaran sebagai direktori saat ini dan jalankan perintah berikut (di mana HelloWorld.dll adalah titik masuk aplikasi):

    dotnet HelloWorld.dll
    

Menyebarkan aplikasi mandiri

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.

Untuk menyebarkan aplikasi Anda sebagai aplikasi mandiri, selesaikan langkah-langkah berikut:

  1. Pastikan SSH diaktifkan di perangkat Anda. Untuk Raspberry Pi, lihat Menyiapkan SSH Server dalam dokumentasi Raspberry Pi.

  2. Terbitkan aplikasi di komputer pengembangan sebagai berikut, tergantung pada lingkungan pengembangan.

    • Jika menggunakan Visual Studio, sebarkan aplikasi ke folder lokal. Sebelum menerbitkan, pilih Edit di ringkasan profil penerbitan dan pilih tab Pengaturan. Pastikan mode Penyebaran diatur ke Mandiri dan Runtime target diatur ke linux-arm64.

    • Jika menggunakan .NET CLI, gunakan perintah terbitkan dotnet dengan --runtime linux-arm64 argumen dan --self-contained :

      dotnet publish --runtime linux-arm64 --self-contained
      

    Penting

    Jika Anda menggunakan OS 32-bit, Anda perlu menargetkan linux-arm runtime.

  3. Menggunakan klien SFTP seperti scp, salin file dari lokasi penerbitan di komputer pengembangan ke folder baru di SBC.

    Misalnya, untuk menggunakan scp perintah untuk menyalin file dari komputer pengembangan ke SBC Anda, buka prompt perintah dan jalankan yang berikut:

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

    Mana:

    • Opsi -r ini menginstruksikan scp untuk menyalin file secara rekursif.
    • /publish-location/ adalah folder yang Anda terbitkan di langkah sebelumnya.
    • pi@raspberypi adalah nama pengguna dan host dalam format <username>@<hostname>.
    • /home/pi/deployment-location/ adalah folder baru di SBC.

    Tip

    Versi terbaru Windows memiliki OpenSSH, yang mencakup scp, pra-instal.

  4. Dari perintah Bash di perangkat (lokal atau SSH), jalankan aplikasi. Untuk melakukan ini, atur direktori saat ini ke lokasi penyebaran dan selesaikan langkah-langkah berikut:

    1. Berikan izin eksekusi yang dapat dieksekusi (di mana HelloWorld adalah nama file yang dapat dieksekusi).

      chmod +x HelloWorld
      
    2. Jalankan executable.

      ./HelloWorld