溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

發(fā)布時(shí)間:2021-12-21 10:59:06 來源:億速云 閱讀:147 作者:柒染 欄目:大數(shù)據(jù)

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。

今天很開心的拿到了龍芯的測試服務(wù)器賬號(hào), 先上圖show一下, 

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

雙核, 8G內(nèi)存, 50G硬盤。

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

架構(gòu) mips64el 

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

登錄后, 顯示為 uos 及其網(wǎng)址信息:

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

接下來, 二話不說, 我們開始下載龍芯版的.Net Core , 龍芯版.Net Core 近期剛移植完成, 前期國內(nèi)其他公眾號(hào)和開源中國均有報(bào)道, 現(xiàn)在, 相關(guān)工具鏈已完成,完全已經(jīng)達(dá)到了開箱即用, 并且已經(jīng)是.Net Core 3.1.7 是最新版本,相關(guān)下載鏈接如下:

.NET Core 3.1.7 MIPS64 Port Early Access Build 20200819 

 https://github.com/gsvm/loongson-dotnet/releases 

由于IoTSharp 是  基于asp.net core , 因此我們首先下載 它的 安裝包, 后期如果嘗試在龍芯上開發(fā)其他內(nèi)容, 再嘗試sdk。 下載鏈接如下:

https://github.com/gsvm/loongson-dotnet/releases/download/ea-20200819/aspnetcore-runtime-3.1.7-ea-20200819-linux-loongson3a.tar.gz

github 的下載速度偶爾很快:

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

下載完成后, 開始解壓, 因?yàn)?nbsp;分配的賬號(hào)并沒有/usr/bin 的寫權(quán)限, 因此, 我們解壓在用戶目錄下, 

tar -xzvf  ./aspnetcore-runtime-3.1.7-ea-20200819-linux-loongson3a.tar.gz  -C  /dn/

cd dn 進(jìn)入dn目錄, 可以看到 相關(guān)內(nèi)容, 下面我們?yōu)榱朔奖悖?將他加到環(huán)境變量, 命令行輸入 vi .bashrc , 在末尾  加入下面內(nèi)容。 

export PATH="$PATH://home/loongson/dn/"

現(xiàn)在, 可以直接在控制臺(tái)輸入 dotnet 方便操作。 當(dāng)然, 這些都是因?yàn)闄?quán)限問題, 無法修改系統(tǒng)文件導(dǎo)致的。 如果你有root權(quán)限, 完全不必這么做 放到/usr/bin 下面了事。 

接下來, 我們發(fā)布一個(gè)IoTSharp 的版本, 發(fā)布配置如下:

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

記得, 一定要是 可移植的, 這樣.net 就不會(huì)針對(duì)平臺(tái)進(jìn)行特殊處理!

下面, 開始安裝postgresql . 

寫到這里, 突然想起 su root  , 然后輸入了龍芯給的普通用戶的密碼, 居然成功切換, 好吧, 這下我們就很順利了, 

開始安裝pgsql 

apt-get install postgresql-11

如圖:

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

安裝完成

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

按照說明, 我們輸入了 

 pg_ctlcluster 11 main start

啟動(dòng)了數(shù)據(jù)庫, 輸入下面的命令切換數(shù)據(jù)庫的系統(tǒng)用戶

su postgres

執(zhí)行 psql 修改數(shù)據(jù)庫密碼, 輸入下面的腳本

ALTER USER postgres WITH PASSWORD 'future';

如圖所示

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

現(xiàn)在我們開始啟動(dòng)程序, 由于我們擁有了root權(quán)限!將.net core 移動(dòng)到 /usr/bin 中, 將IoTSharp 發(fā)布的內(nèi)容上傳到 /var/iotsharp  

接下來, 讓我們創(chuàng)建 系統(tǒng)服務(wù), 在當(dāng)前木目錄先創(chuàng)建文件使用命令vi  iotsharp.service  編輯內(nèi)容如下:


[Unit]Description=IoTSharp running on loongson

[Service]WorkingDirectory=/var/iotsharpExecStart=/usr/bin/dotnet /var/iotsharp/IoTSharp.dll   Restart=always# Restart service after 10 seconds if the IoTSharp service crashes:RestartSec=10KillSignal=SIGINTSyslogIdentifier=iotsharpUser=iotsharpEnvironment=ASPNETCORE_ENVIRONMENT=ProductionEnvironment=DOTNET_PRINT_TELEMETRY_MESSAGE=falseEnvironment=ASPNETCORE_URLS="http://0.0.0.0:8080"[Install]WantedBy=multi-user.target

復(fù)制服務(wù)文件:

cp  iotsharp.service   /etc/systemd/system/iotsharp.service

啟用服務(wù)

 systemctl enable  /etc/systemd/system/iotsharp.service

創(chuàng)建用戶 

 useradd iotsharp

啟動(dòng)服務(wù)

 systemctl start  iotsharp.service

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

由于當(dāng)前版本默認(rèn)啟動(dòng)了CapServer 和 ModBus 服務(wù), 由于ModBus的默認(rèn)502端口在linux下 低于1024 端口, 普通用戶使用時(shí)有權(quán)限問題, 因此  需要加入配置項(xiàng)修改一下appsettings.Production.json , 在尾部加入下面內(nèi)容, 會(huì)將默認(rèn)的ModBus 端口改為 5020 

 "ModBusServer": {    "Port": 5020,    "TimeOut": 120000  }

使用命令systemctl status  iotsharp.service 查看IoTSharp 項(xiàng)目狀態(tài), 截圖如下:

怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp

至此, 我們搭建完成, 期間務(wù)必注意的是 pgsql一定要啟動(dòng), 一點(diǎn)iotsharp 自動(dòng)啟動(dòng), 則通過服務(wù)方式重啟或者ctl+c 的方式結(jié)束似乎都不能實(shí)現(xiàn), 系統(tǒng)重啟才行。 

關(guān)于怎么在龍芯3B4000上部署基于.Net Core 開發(fā)的物聯(lián)網(wǎng)平臺(tái)IoTSharp問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI