樹莓派3b+ linux系統安裝,C# .NET Core2.2 程序部署親身完美體驗過程

現在基於c#的開發框架.net core已經開源並支持跨平臺運行,現在已經發布.net core2.2,已經非常成熟,很優秀,推薦大家使用,於是我也嘗試使用樹莓派進行部署並以後用於深入進行物聯網的一些操作。。

從淘寶買了一個樹莓派3b+(兩百多塊錢),買回來進行拆騰了一個小時,裝拆了兩次,完美組裝之後變成了這樣子,注意TF卡插的位置

第一步,首先安裝系統(拿出買樹莓派時附帶的tf卡,通過以下操作把系統裝進去)

1、從官網下載系統https://www.raspberrypi.org/downloads/raspbian/

選Raspbian Stretch with desktop and recommended software下載回來,並解壓後面第3步使用

2、下載tf卡格式化工具 :SD card formatter 

下載地址:https://www.sdcard.org/downloads/formatter_4/eula_windows/index.html,打開網址後按 Accept開始下載

插入tf卡到電腦,格式化tf卡

這裏寫圖片描述

3、下載系統寫入工具 win32diskimager 

下載地址:https://jaist.dl.sourceforge.net/project/win32diskimager/Archive/win32diskimager-1.0.0-install.exe

插入tf卡到電腦,打開後選擇第1步下載回來的解壓後的系統鏡像文件,設備選tf卡,按"寫入“

這裏寫圖片描述

 

4、配置無線網絡(如果有條件插網線,就不需要配置了)

然後設置上網,在tf卡也就是當前的boot盤新建一個wpa_supplicant.conf的文件,寫入上網配置命令:

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="iPhone 手機熱點wifi名稱"
     psk="104104104 wifi密碼"

    key_mgmt=WPA-PSK
    priority=1
}

network={
    ssid="普通路由器wifi名稱"
    psk="104104104 wifi密碼"
    priority=2
}

如果是使用手機熱點,在network裏面再增加一行 key_mgmt=WPA-PSK  

這裏注意一定要在boot目錄下創建這個conf,否則系統裝好後將無法啓動wifi連接。

 

5、開啓SSH連接功能,需要在tf卡的根目錄下增加一個文件名爲“ssh”的空文件,記住是沒有綴名的文件名就只有ssh三個字母

 

恭喜你,到這裏系統已經配置完成,把tf卡插入到樹莓派線路板上面那個小插槽,接上電源即可!!(配圖)

二、SSL連接樹莓派

準備工作:把tf卡插到樹莓派的插槽上面、沒有配置無線網絡就要插網線、插上電源,打開電源,機子就自動啓動了。

回到自己的window電腦上面

1、下載一個內網電腦IP查看工具Advanced_IP_Scanner.rar

查看到一個名字叫Raspberry Pi的計算機名稱,就是樹莓派的,記下他的IP地址

2、下載一個ssh操作工具(破解版)Xshell 6和文件上傳工具Xftp 6, 這兩個是配套使用的

打開Xsheel6工具,輸入樹莓派的IP,連接,連接成功後輸入默認的用戶名pi,密碼raspberry

恭喜你,到這裏你已經成功連接樹莓派,下面開始部署程序了。

三、搭建.net core運行環境

1)下載安裝SDK或者Runtime:官方地址:https://www.microsoft.com/net/download/linux

這裏使用最簡單的方法下載安裝,直接複製下載連接地址,按順序執行以下三條命令:

下載運行時runtime

curl -sSL -o dotnet.tar.gz https://download.visualstudio.microsoft.com/download/pr/5ca39d79-c65c-4c03-bba1-e904c7255c44/4fb100d62b0a3fff5fbf5dd24f761d71/aspnetcore-runtime-2.2.2-linux-arm.tar.gz

提取內容

sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet

設置可以執行DotNet:

sudo ln -s /opt/dotnet/dotnet /usr/local/bin

 2)測試:dotnet --help  或者 dotnet --info.成功,則就如下圖

三、部署.net core控制檯程序

1、在自己的電腦上使用VS寫一個NetCore2.2的控制檯程序,我假設我就寫個Helloworld。

發佈項目

使用xshell6+xftp6上傳程序

回到在xshell中,進入目錄輸入:cd consolepublish,運行程序:  dotnet ConsoleApp1.dll

輸入hello world,成功!

四、部署.net core網站程序

1、發佈你的項目

使用xshell6+xftp6上傳程序

回到xshell6,f進入目錄輸入: cd webPublish    運行程序:dotnet test2.2.dll

訪問地址爲:http://localhost:5000,嘗訪問如下:

已經出現 html代碼,證明是可以訪問的,部署成功了!但默認只能在樹梅派中訪問,如果web要在別的內網電腦通過IP訪問是訪問不了的。需要進行以下設置

局域名或者外網如何通過IP訪問樹莓派的WEB程序?

Net Core 默認創建的項目部署完成以後,只能在本機內訪問,外部通過IP是打不開的,可以通過配置Nginx實現。也可以通過修改Program.cs

public static void Main(string[] args) {
            CreateWebHostBuilder(args).Build().Run();
        }

默認只能在樹莓派本地通過localhost:5000訪問

改爲

public static void Main(string[] args)
{
    var host = new WebHostBuilder()

    .UseKestrel()

    .UseUrls("http://*:5000")

    .UseContentRoot(Directory.GetCurrentDirectory())

    .UseIISIntegration()

    .UseStartup<Startup>()

    .Build();

    host.Run();
}

說明:UseUrls(http://*:5000) 即可實現通過IP訪問程序。如 http://192.168.1.101:5000

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章