您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關.NET Core開發(fā)的iNeuOS物聯(lián)網平臺部署樹莓派的解決方法是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
備注:為了文章的完整性,在《.NET Core開發(fā)的iNeuOS物聯(lián)網平臺部署在Ubuntu操作系統(tǒng)》中的內容適用于樹莓派部署,也將在這篇文章中出現。
iNeuOS成功部署在樹莓派上,意味著iNeuOS打通了從嵌入式到云端整體鏈路,為中小企業(yè)在物聯(lián)網建設方面提供了整體解決方案,降低產品研發(fā)、項目執(zhí)行方面的成本。iNeuOS部署在樹莓派主要意義在于:
(1) 可以形成企業(yè)網關產品,應用到系統(tǒng)建設中。
(2) 設備容器可以遠程設備數據采集進行遠程運維,并且支持設備驅動在線更新。
(3) Web組態(tài)建??梢赃h程配置和開發(fā)監(jiān)測頁面,現場屏幕就地顯示。
(4) 與云端系統(tǒng)無縫對接,快速進行私有云部署。
(5) 支持接口形式的二次開發(fā),降低人員開發(fā)周期和成本。
(6) 降低企業(yè)開發(fā)和部署網關的成本,核心板+外殼+人工等費用,可以控制在幾百元左右。
某企業(yè)對集團級的物聯(lián)網平臺進行升級,符合對遠程部署的終端硬件網關可以進行遠程配置和運維的總體要求。
但是,也會有質疑,認為C/C++更適合嵌入式或網關級的開發(fā),占用資源少、運行效率高,當然這是最優(yōu)的方案。iNeuOS在樹莓派的部署,在考慮開發(fā)成本、項目執(zhí)行周期成本、人力成本等諸多因素,從整體解決方案方面為企業(yè)提供了更多的選擇路徑。
在實際部署和使用過程,.NET Core在raspbian下的執(zhí)行效率,沒有想象中的差,另外執(zhí)行效率只是我們選擇方案考慮的因素之一。
樹莓派3代b+開發(fā)板Raspberry Pi 3b,詳細配置參數,如下圖:
操作系統(tǒng):raspbian September 2019
Kernel版本: 4.19
.NET Core版本:2.2.402
數據庫:MariaDB (與mysql基本兼容)
下載地址: https://www.raspberrypi.org/downloads/raspbian/,如下圖:
把Api和UI復制到Ubuntu操作系統(tǒng)的work目錄下,如下圖:
執(zhí)行命令:
sudo vim /etc/ssh/sshd_config
增加如下配置信息:
PasswordAuthentication yes PermitRootLogin yes
sudo apt-get install curl libunwind8 gettext
curl -sSL -o dotnet.tar.gz https://download.visualstudio.microsoft.com/download/pr/e0050c1d-ddc6-4ac9-ba3b-07d85eec5890/614dae615fe229f6b6f43658262a8f08/dotnet-sdk-2.2.402-linux-arm.tar.gz (不是固定下載鏈接地址,可以先下載好,上傳到raspbian系統(tǒng),再執(zhí)行下面的命令)
sudo mkdir -p /opt/dotnet
sudo tar zxf dotnet.tar.gz -C /opt/dotnet
sudo ln -s /opt/dotnet/dotnet /usr/local/bin
(1)實例安裝
ubuntu上安裝mysql比較簡單,只需要幾條命令就可以完成,如下:
developer:~$ sudo apt-get install mariadb-server
安裝過程中會提示設置密碼,注意設置一樣,安裝完成之后可以使用如下命令來檢查是否安裝成功:
developer:~$ sudo netstat -tap | grep mysql
通過上述命令檢查之后,如果看到有mysql 的socket處于 listen 狀態(tài)則表示安裝成功。
登陸mysql數據庫可以通過如下命令:
mysql -u root -p
-u 表示選擇登陸的用戶名, -p 表示登陸的用戶密碼,上面命令輸入之后會提示輸入密碼,此時輸入密碼就可以登錄到mysql。
(2)區(qū)分大小寫配置
在unbuntu下找到/etc/mysql/mysql.conf.d/mysqld.cnf文件,在[mysqld]的下添加 lower_case_table_names=1 就行了。備注:為0時大小寫敏感,為1時大小寫不敏感,默認為0。如下圖:
(3)外網訪問權限配置
本地mysql5.7數據庫,當使用127.0.0.1和localhost時可以連接,但當使用本地ip時192.168.*.則連接拒絕,當然外網通過192.168..*同樣無法連接。
解決方法如下:
1)登陸mysql,授權外網訪問權限
developer:~$ use mysql;
developer:~$ update user set host = ‘%’ where user = ‘root’;
developer:~$ flush privileges;
2)修改my.cnf配置
在unbuntu下找到/etc/mysql/mysql.conf.d/mysqld.cnf文件,把bind-address=127.0.0.1修改bind-address=0.0.0.0
3) 跳過權限表。(與在Ubuntu下部署不一樣)
在unbuntu下找到/etc/mysql/mysql.conf.d/mysqld.cnf文件(如果是mariadb數據庫,則是:/etc/mysql/mariadb.conf.d/50-server.cnf),加下配置: skip-grant-tables
其他設置,請根據實際情況進行選擇。
(5)服務命令
啟動方式:
使用 service 啟動:service mysql start
使用 mysqld 腳本啟動:/etc/inint.d/mysql start
停止方式:
使用 service 啟動:service mysql stop
使用 mysqld 腳本啟動:/etc/inint.d/mysql stop
重啟方式:
使用 service 啟動:service mysql restart
使用 mysqld 腳本啟動:/etc/inint.d/mysql restart
安裝反向代理nginx,啟動,命令如下:
developer:~$ sudo apt-get install nginx
developer:~$ sudo service ngnix start
然后訪問一下本機的IP地址(127.0.0.1),如果出現如下頁面,說明已經安裝成功。
?。?) 修改后臺接口服務(API)訪問數據庫的配置文件,考慮到安全性的問題,進行了加密,如下圖:
(1) 運行后臺接口服務(API),修改appsettings.json配置文件,可以偵聽本地所有IP的端口,增加Kestrel配置節(jié),如下圖:
?。?) 配置nginx服務,訪問前端應用系統(tǒng),如下:
安裝好之后進入到以下目錄,打開default文件,如下命令:
developer:~$ cd /etc/nginx/sites-available
developer:~$ sudo gedit default
修改為以下的內容,偵聽81端口,并指訪問的根目錄(UI)和瀏覽的默認頁(index.html),如下圖:
WEB組態(tài)建模開發(fā),如下圖:
視圖應用顯示,如下圖:
以上就是.NET Core開發(fā)的iNeuOS物聯(lián)網平臺部署樹莓派的解決方法是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。