.netcore 开发的 iNeuOS 物联网平台部署在 Ubuntu 操作系统,无缝跨平台
?1.?? 概述
?????? 參見前兩篇文章:《
?????? iNeuOS完全使用.netcore開發,主要為企業、集成商打造從網關、邊緣應用、云端建設的物聯網/工業互聯網平臺產品級解決方案。面向應用場景:(1)嵌入式硬件網關的開發和部署,形成自己企業網關產品。(2)企業私有云物聯網平臺的搭建。(3)集團級公有云物聯網平臺的搭建。面向這些應用場景都支持多設備多協議的設備接入、視圖組態建模、面向機器學習的數據分析。
2.?? 準備運行程序包
???? 把iNeuOS后臺接口服務和前端應用系統復制到Ubuntu操作系統下的work工作目錄,程序包中主要目錄,如下圖:
iNeuOS完全使用.netcore開發,主要為企業、集成商打造從網關、邊緣應用、云端建設的物聯網/工業互聯網平臺產品級解決方案
?????? 把Api和UI復制到Ubuntu操作系統的work目錄下,如下圖:
3.?? 安裝.netcore
????? Ubuntu 操作系統版本: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 狀態則表示安裝成功。
? ? ? 登陸mysql數據庫可以通過如下命令:
| 1 | mysql -u root -p |
? ? ???-u 表示選擇登陸的用戶名, -p 表示登陸的用戶密碼,上面命令輸入之后會提示輸入密碼,此時輸入密碼就可以登錄到mysql。
?(2)區分大小寫配置
?????? 在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,授權外網訪問權限
| 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),如果出現如下頁面,說明已經安裝成功。
6.?? 配置iNeuOS數據庫和文件
(1)??? 創建數據庫,我是在window下使用Navicat執行sql腳本。如下圖:
??(2)??? 修改后臺接口服務(API)訪問數據庫的配置文件,考慮到安全性的問題,進行了加密,如下圖:
??(3)??? 修改前端應用系統(UI)訪問后臺接口服務(API)的配置文件UI\lib\buffos\js\目錄下request.js和uiconfig.js,如下圖:
??
7.?? 運行iNeuOS
(1)運行后臺接口服務(API),修改appsettings.json配置文件,可以偵聽本地所有IP的端口,增加Kestrel配置節,如下圖:
?????? 執行運行接口命令,如下圖:
??(2)配置nginx服務,訪問前端應用系統,如下:
???? 安裝好之后進入到以下目錄,打開default文件,如下命令:
| 12 | developer:~$ cd /etc/nginx/sites-availabledeveloper:~$ sudo gedit?default |
??? 修改為以下的內容,偵聽81端口,并指訪問的根目錄(UI)和瀏覽的默認頁(index.html),如下圖:
?(3)訪問URL(http://127.0.0.1:81或http://192.168.199.128:81)地址,效果如下圖:
???????????? 設備容器,負責運行設備驅動,如下圖:
????????? 組態建模,負責構建監測視圖應用,如下圖:
?? ? ? ??? 機器學習,負責對多維數據進行數據標記、模型訓練、工況預測,如下圖:
物聯網&集成技術 QQ群:54256083?
物聯網&集成合作 QQ群:727664080
網站:http://www.ineuos.net
原文鏈接:https://www.cnblogs.com/lsjwq/p/11655093.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?
總結
以上是生活随笔為你收集整理的.netcore 开发的 iNeuOS 物联网平台部署在 Ubuntu 操作系统,无缝跨平台的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT从业的迷思与破解之道(更新)
- 下一篇: 刷新:重新发现.NET与未来