.NET Core开发的iNeuOS物联网平台部署在Ubuntu操作系统,无缝跨平台。助力《2019 中国.NET 开发者峰会》。
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
3) 跳过权限表
在unbuntu下找到/etc/mysql/mysql.conf.d/mysqld.cnf文件,加下配置: skip-grant-tables
(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)的配置文件UI\lib\buffos\js\目录下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