在树莓派4上安装 .NET Core 3.0 运行时及 SDK
點擊上方藍字關注“汪宇杰博客”
導語
我最近買了個樹莓派4,4GB內存高富帥配置,并安裝了官方操作系統Raspbian。今天我成功運行了一個ASP.NET Core 3.0 應用程序。我們來看看怎么弄的吧~
ARM32 還是 ARM64?
需要說明的是,目前無法在樹莓派 4 上運行 ARM64 版本的 .NET Core 運行時或 SDK。雖然樹莓派4的CPU支持64位,但其官方操作系統Raspbian不是64位的。其他第三方操作系統也尚未更新以支持樹莓派4。所以,如果你想在樹莓派4上跑 .NET Core 3.0 ,唯一的選擇是 ARM32。
準備
必需:互聯網連接,用于下載 .NET Core 3.0 運行時及SDK
可選:VS / VSCode 用于開發樣例工程
更新 Raspbian 系統
sudo apt-get update
sudo apt-get upgrade
建議為你的樹莓派準備個顯示器或 VNC 連接,以便可以在最后一步測試你的 ASP.NET Core 網站,而無需糾結端口和網絡設置。
下載 .NET Core 3.0 SDK 及運行時
在你的電腦上打開?https://dotnet.microsoft.com/download/dotnet-core/3.0?找到 Linux 底下的 ARM32 版本的 SDK 及 Runtime,點開,頁面上會顯示一個 Direct Link。這兩個鏈接就是我們在 Raspbian 上要用來下載最新版 SDK 及運行時的鏈接。
目前,這兩個鏈接是:
.NET Core 3.0 SDK (Linux/ARM32)
https://download.visualstudio.microsoft.com/download/pr/8ddb8193-f88c-4c4b-82a3-39fcced27e91/b8e0b9bf4cf77dff09ff86cc1a73960b/dotnet-sdk-3.0.100-linux-arm.tar.gz
ASP.NET Core 3.0 Runtime (Linux/ARM32)
https://download.visualstudio.microsoft.com/download/pr/e9d4b012-a877-443c-8344-72ef910c86dd/b5e729b532d7b3b5488c97764bd0fb8e/aspnetcore-runtime-3.0.0-linux-arm.tar.gz
到樹莓派上使用 wget 下載這兩個文件
wget https://download.visualstudio.microsoft.com/download/pr/8ddb8193-f88c-4c4b-82a3-39fcced27e91/b8e0b9bf4cf77dff09ff86cc1a73960b/dotnet-sdk-3.0.100-linux-arm.tar.gz?
wget https://download.visualstudio.microsoft.com/download/pr/e9d4b012-a877-443c-8344-72ef910c86dd/b5e729b532d7b3b5488c97764bd0fb8e/aspnetcore-runtime-3.0.0-linux-arm.tar.gz
安裝 .NET Core 3.0 SDK 及運行時
創建一個新目錄,如 dotnet-arm32,將剛才下載好的文件解壓進去。
mkdir dotnet-arm32
tar zxf aspnetcore-runtime-3.0.0-linux-arm.tar.gz -C $HOME/dotnet
tar zxf dotnet-sdk-3.0.100-linux-arm.tar.gz -C $HOME/dotnet
目前為止,你只能在 dotnet-arm32 里執行.NET命令。要讓 dotnet 命令在任何位置都能跑,需要創建一個環境變量連接指向?dotnet-arm32 文件夾。
export DOTNET_ROOT=$HOME/dotnet-arm32
export PATH=$PATH:$HOME/dotnet-arm32
現在你可以運行 dotnet --info 試一下:
在Raspbian里創建.NET Core程序
現在,我們已經有了 SDK,我們不必使用另一臺計算機來開發和發布應用程序。我們可以直接在樹莓派上搞。
mkdir hello-netcore3
cd hello-netcore3/?
dotnet new console
工程創建完成,NuGet 還原完成后,即可用 dotnet run 命令執行程序。
甚至你也可以湊合著用 nano 作為編輯器
sudo nano Program.cs
部署和運行 ASP.NET Core 網站
在更真實的場景中。如果沒有 Raspbain 上的 IDE,您就無法開發復雜的 .NET Core 應用程序。我們通常先在電腦上開發和測試我們的應用程序,然后發布到樹莓派來運行。
要運行 ASP.NET Core 應用程序,首先需要發布它。例如,從 Visual Studio 2019 中,我有一個空 ASP.NET Core 應用程序,改了點Startup.cs 輸出更多信息。
await context.Response.WriteAsync($"Empower every person and every organization on the planet to achieve more{Environment.NewLine}" +?$".NET Core {Environment.Version}{Environment.NewLine}" +?$"Environment.OSVersion: {Environment.OSVersion}{Environment.NewLine}" +?$"Environment.Is64BitOperatingSystem: {Environment.Is64BitOperatingSystem}{Environment.NewLine}" +?$"Environment.Is64BitProcess: {Environment.Is64BitProcess}", Encoding.UTF8);
使用 FDD + Portable 發布。因為我們樹莓派上已經安裝了原生運行時,因此根本無需使用 linux-arm 這個RID來發布。Portable即可運行。
把發布后的目錄拷到樹莓派上
現在,即可用 dotnet dll名稱.dll 來跑你的 ASP.NET Core 網站
想要 Docker?
Docker Hub 上可以下載到微軟官方的 .NET Core 3.0 ARM32 版運行時及SDK,如果你像我一樣在樹莓派上安裝了docker,可以直接 docker run 歡樂多:
參考文檔:https://www.hanselman.com/blog/InstallingTheNETCore2xSDKOnARaspberryPiAndBlinkingAnLEDWithSystemDeviceGpio.aspx
總結
以上是生活随笔為你收集整理的在树莓派4上安装 .NET Core 3.0 运行时及 SDK的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dotNET Core 中怎样操作 AD
- 下一篇: .NET生成漂亮桌面背景