天天看點

.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

目 錄

  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)集團級公有雲物聯網平台的搭建。面向這些應用場景都支援多裝置多協定的裝置接入、視圖組态模組化、面向機器學習的資料分析。           
  8. 準備運作程式包
    把iNeuOS背景接口服務和前端應用系統複制到Ubuntu作業系統下的work工作目錄,程式包中主要目錄,如下圖:           
    .NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
把Api和UI複制到Ubuntu作業系統的work目錄下,如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
  1. 安裝.netcore
    Ubuntu 作業系統版本:16.04
    
     .netcore版本:2.2.4,程式包:dotnet-sdk-2.2
    
      安裝過程,如下圖:           
    .NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
參考官方連結:https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install           
  1. 安裝mysql

(1)執行個體安裝

ubuntu上安裝mysql比較簡單,隻需要幾條指令就可以完成,如下:           

1

2

3

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。如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

(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)  跳過權限表

 在unbuntu下找到/etc/mysql/mysql.conf.d/mysqld.cnf檔案,加下配置: skip-grant-tables           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

(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           
  1. 安裝nginx
    安裝反向代理nginx,啟動,指令如下:           

developer:~$ sudo apt-get install nginx

developer:~$ sudo service ngnix start

然後通路一下本機的IP位址(127.0.0.1),如果出現如下頁面,說明已經安裝成功。           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
  1. 配置iNeuOS資料庫和檔案

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

.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

(2) 修改背景接口服務(API)通路資料庫的配置檔案,考慮到安全性的問題,進行了加密,如下圖:

.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

(3) 修改前端應用系統(UI)通路背景接口服務(API)的配置檔案UIlibbuffosjs目錄下request.js和uiconfig.js,如下圖:

.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
  1. 運作iNeuOS

(1)運作背景接口服務(API),修改appsettings.json配置檔案,可以偵聽本地所有IP的端口,增加Kestrel配置節,如下圖:

.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
執行運作接口指令,如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

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

安裝好之後進入到以下目錄,打開default檔案,如下指令:           

developer:~$ cd /etc/nginx/sites-available

developer:~$ sudo gedit default

修改為以下的内容,偵聽81端口,并指通路的根目錄(UI)和浏覽的預設頁(index.html),如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

(3)通路URL(

http://127.0.0.1:81

http://192.168.199.128:81

)位址,效果如下圖:

裝置容器,負責運作裝置驅動,如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
組态模組化,負責建構監測視圖應用,如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。
機器學習,負責對多元資料進行資料标記、模型訓練、工況預測,如下圖:           
.NET Core開發的iNeuOS物聯網平台部署在Ubuntu作業系統,無縫跨平台。

物聯網&內建技術 QQ群:54256083

物聯網&內建合作 QQ群:727664080

網站:

http://www.ineuos.net