.netcore 开发的 iNeuOS 物联网平台部署在 Ubuntu 操作系统,无缝跨平台
?1.?? 概述
?????? 參見前兩篇文章:《
?????? iNeuOS完全使用.netcore開發(fā),主要為企業(yè)、集成商打造從網(wǎng)關(guān)、邊緣應用、云端建設的物聯(lián)網(wǎng)/工業(yè)互聯(lián)網(wǎng)平臺產(chǎn)品級解決方案。面向應用場景:(1)嵌入式硬件網(wǎng)關(guān)的開發(fā)和部署,形成自己企業(yè)網(wǎng)關(guān)產(chǎn)品。(2)企業(yè)私有云物聯(lián)網(wǎng)平臺的搭建。(3)集團級公有云物聯(lián)網(wǎng)平臺的搭建。面向這些應用場景都支持多設備多協(xié)議的設備接入、視圖組態(tài)建模、面向機器學習的數(shù)據(jù)分析。
2.?? 準備運行程序包
???? 把iNeuOS后臺接口服務和前端應用系統(tǒng)復制到Ubuntu操作系統(tǒng)下的work工作目錄,程序包中主要目錄,如下圖:
iNeuOS完全使用.netcore開發(fā),主要為企業(yè)、集成商打造從網(wǎng)關(guān)、邊緣應用、云端建設的物聯(lián)網(wǎng)/工業(yè)互聯(lián)網(wǎng)平臺產(chǎn)品級解決方案
?????? 把Api和UI復制到Ubuntu操作系統(tǒng)的work目錄下,如下圖:
3.?? 安裝.netcore
????? Ubuntu 操作系統(tǒng)版本:16.04
???? .netcore版本:2.2.4,程序包:dotnet-sdk-2.2
????? 安裝過程,如下圖:
?????? 參考官方鏈接:https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install
4.?? 安裝mysql
(1)實例安裝
???????? ubuntu上安裝mysql比較簡單,只需要幾條命令就可以完成,如下:
| 123 | developer:~$ sudo apt-get?install mysql-serverdeveloper:~$ apt-get?isntall mysql-clientdeveloper:~$ sudo apt-get?install libmysqlclient-dev |
?????? 安裝過程中會提示設置密碼,注意設置一樣,安裝完成之后可以使用如下命令來檢查是否安裝成功:
| 1 | developer:~$ sudo netstat -tap | grep mysql |
? ? ???通過上述命令檢查之后,如果看到有mysql 的socket處于 listen 狀態(tài)則表示安裝成功。
? ? ? 登陸mysql數(shù)據(jù)庫可以通過如下命令:
| 1 | 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)外網(wǎng)訪問權(quán)限配置
?????? 本地mysql5.7數(shù)據(jù)庫,當使用127.0.0.1和localhost時可以連接,但當使用本地ip時192.168.*.則連接拒絕,當然外網(wǎng)通過192.168..*同樣無法連接。
?????? 解決方法如下:
????? 1)登陸mysql,授權(quán)外網(wǎng)訪問權(quán)限
| 123 | 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
(4)服務命令
??????? 啟動方式:
??????? 使用 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
5.?? 安裝nginx
????? 安裝反向代理nginx,啟動,命令如下:
| 12 | developer:~$ sudo apt-get?install nginxdeveloper:~$ sudo service ngnix start |
???? 然后訪問一下本機的IP地址(127.0.0.1),如果出現(xiàn)如下頁面,說明已經(jīng)安裝成功。
6.?? 配置iNeuOS數(shù)據(jù)庫和文件
(1)??? 創(chuàng)建數(shù)據(jù)庫,我是在window下使用Navicat執(zhí)行sql腳本。如下圖:
??(2)??? 修改后臺接口服務(API)訪問數(shù)據(jù)庫的配置文件,考慮到安全性的問題,進行了加密,如下圖:
??(3)??? 修改前端應用系統(tǒng)(UI)訪問后臺接口服務(API)的配置文件UI\lib\buffos\js\目錄下request.js和uiconfig.js,如下圖:
??
7.?? 運行iNeuOS
(1)運行后臺接口服務(API),修改appsettings.json配置文件,可以偵聽本地所有IP的端口,增加Kestrel配置節(jié),如下圖:
?????? 執(zhí)行運行接口命令,如下圖:
??(2)配置nginx服務,訪問前端應用系統(tǒng),如下:
???? 安裝好之后進入到以下目錄,打開default文件,如下命令:
| 12 | developer:~$ cd /etc/nginx/sites-availabledeveloper:~$ sudo gedit?default |
??? 修改為以下的內(nèi)容,偵聽81端口,并指訪問的根目錄(UI)和瀏覽的默認頁(index.html),如下圖:
?(3)訪問URL(http://127.0.0.1:81或http://192.168.199.128:81)地址,效果如下圖:
???????????? 設備容器,負責運行設備驅(qū)動,如下圖:
????????? 組態(tài)建模,負責構(gòu)建監(jiān)測視圖應用,如下圖:
?? ? ? ??? 機器學習,負責對多維數(shù)據(jù)進行數(shù)據(jù)標記、模型訓練、工況預測,如下圖:
物聯(lián)網(wǎng)&集成技術(shù) QQ群:54256083?
物聯(lián)網(wǎng)&集成合作 QQ群:727664080
網(wǎng)站:http://www.ineuos.net
原文鏈接:https://www.cnblogs.com/lsjwq/p/11655093.html
.NET社區(qū)新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?
總結(jié)
以上是生活随笔為你收集整理的.netcore 开发的 iNeuOS 物联网平台部署在 Ubuntu 操作系统,无缝跨平台的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT从业的迷思与破解之道(更新)
- 下一篇: 如何将 Azure 上的 Ubuntu