.netcore 開發的 iNeuOS 物聯網平台部署在 Ubuntu 作業系統,無縫跨平台。助力《2019 中國.NET 開發者峰會》。

  • 2019 年 10 月 11 日
  • 筆記

 

2019 中國.NET 開發者峰會正式啟動

 

目       錄

1.      概述… 2

2.      準備運行程式包… 2

3.      安裝.netcore. 3

4.      安裝mysql 3

5.      安裝nginx. 5

6.      配置iNeuOS資料庫和文件… 5

7.      運行iNeuOS. 6


 1.   概述

       參見前兩篇文章:《iNeuOS雲作業系統,.NET Core全系打造》、《iNeuOS 物聯網雲作業系統2.0發布,集成設備容器、視圖建模、機器學習》。

       iNeuOS完全使用.netcore開發,主要為企業、集成商打造從網關、邊緣應用、雲端建設的物聯網/工業互聯網平台產品級解決方案。面嚮應用場景:(1)嵌入式硬體網關的開發和部署,形成自己企業網關產品。(2)企業私有雲物聯網平台的搭建。(3)集團級公有雲物聯網平台的搭建。面向這些應用場景都支援多設備多協議的設備接入、視圖組態建模、面向機器學習的數據分析。

2.   準備運行程式包

     把iNeuOS後台介面服務和前端應用系統複製到Ubuntu作業系統下的work工作目錄,程式包中主要目錄,如下圖:

       把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比較簡單,只需要幾條命令就可以完成,如下:

developer:~$ sudo apt-get install mysql-server  developer:~$ apt-get isntall mysql-client  developer:~$ sudo apt-get install libmysqlclient-dev  

       安裝過程中會提示設置密碼,注意設置一樣,安裝完成之後可以使用如下命令來檢查是否安裝成功:

developer:~$ sudo netstat -tap | grep mysql  

       通過上述命令檢查之後,如果看到有mysql 的socket處於 listen 狀態則表示安裝成功。

      登陸mysql資料庫可以通過如下命令:

 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,授權外網訪問許可權

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,啟動,命令如下:

developer:~$ sudo apt-get install nginx  developer:~$ sudo service ngnix start  

     然後訪問一下本機的IP地址(127.0.0.1),如果出現如下頁面,說明已經安裝成功。

6.   配置iNeuOS資料庫和文件

(1)    創建資料庫,我是在window下使用Navicat執行sql腳本。如下圖:

  (2)    修改後台介面服務(API)訪問資料庫的配置文件,考慮到安全性的問題,進行了加密,如下圖:

  (3)    修改前端應用系統(UI)訪問後台介面服務(API)的配置文件UIlibbuffosjs目錄下request.js和uiconfig.js,如下圖:

 

7.   運行iNeuOS

(1)運行後台介面服務(API),修改appsettings.json配置文件,可以偵聽本地所有IP的埠,增加Kestrel配置節,如下圖:

       執行運行介面命令,如下圖:

  (2)配置nginx服務,訪問前端應用系統,如下:

     安裝好之後進入到以下目錄,打開default文件,如下命令:

developer:~$ cd /etc/nginx/sites-available  developer:~$ 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