智能制造之路—从0开始打造一套轻量级MOM平台之基础平台搭建(Linux部署)
一、前言
前面我们选定了Admin.net来搭建我们的MOM快速开发平台,本章主要描述.NET6平台的Linux部署,以及记录搭建过程中坑。
本次搭建我们选择某云的轻量应用服务器,系统选择CentOS 7.6,数据库使用Mysql。参考配置如下:
二、搭建Linux管理工具
系统搭建完毕,我们使用宝塔来管理linux服务器。直接通过远程安装,快捷,简单,非常不错的工具。
输入远程IP,密码,点击安装,5~10分钟左右即可安装完毕。注意:必须选择LNMP环境。
三、.NET6安装
管理工具安装完成后,进入宝塔系统,打开终端。
1、检测centos是否安装过.net 运行时或者sdk:
dotnet --list-sdks
查看运行时版本:
dotnet --list-runtimes
2、将Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库:
sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
3、一定要安装包含支持的 .NET 运行时的版本
sudo yum install aspnetcore-runtime-6.0
4、安装完成输入dotnet --info 命令查看是否安装成功,注意dotnet --version 是安装sdk后的验证命令
dotnet --info
5、安装成功后,显示的信息如下:
四、PM2安装
PM2是一个守护进程管理器,帮助您管理和守护您的应用程序,可以保证NET6程序像windows 服务一样一直运行。
1、安装Node.js
yum install nodejs
#若遇到No package alien available.Error: Nothing to do,可先执行以下命令再安装nodejs [ yum install epel-release ]
2、安装npm
yum install npm
3、安装pm2(npm版本太低可能会导致安装失败)
npm install -g pm2
4、安装完成输入命令查看版本,返回如下信息,说明安装成功。
pm2 -v
五、后台部署
1、进入宝塔系统,选择网站,创建站点,如下图:
2、下载admin.net源码,VS打开项目,右键Admin.NET.Web.Entry选择发布:部署模式选择“框架依赖”,运行时选择“可移植”
3、发布完成后,进入宝塔的文件管理功能,在/www/目录创建adminnet文件夹
将publish目录文件上传到服务器/www/adminnet目录,如下图:
进入目录/www/adminnet/publish/Configuration,修改数据库配置文件:Database.json。
4、打开终端,输入命令,进入publish目录
cd /www/adminnet/publish
5、使用pm2启动admin.net服务,输入命令
pm2 start "dotnet Admin.NET.Web.Entry.dll"
注意:关闭centos防火墙,云服务器放行端口,否则无法通过服务器IP访问
#关闭 systemctl stop firewalld.service #开机禁用 systemctl disable firewalld.service
6、浏览器输入服务器IP地址,显示swagger,表明后端服务已经部署OK。
六、前端部署
1、使用vscode打开前端代码,修改配置文件,接口地址改为前面部署的后台地址
2、在终端输入命令对前端进行重新编译
npm run build
3、编译完成,进入宝塔系统,选择文件,将编译完成的dist目录文件全部上传到我们前面创建的网站目录:/www/wwwroot/mom
4、浏览器输入服务器地址,进入后台管理系统。
至此,快速开发平台部署完成,正式进入基础数据搭建。
七、总结
经过几天的反复实验查找资料,再验证,终于完成了平台的部署工作。过程中踩了无数的坑,满脸都是泪,最终皇天不负有心人!
记录下踩过的坑
OS系统 | 用7.6版本,8.0版本aspnetcore-runtime-6.0不兼容,提示找不到.NET.APP。 |
防火墙 | 禁用掉 |
PM2 | pm2 start 后面接的是完整命令 pm2 start "dotnet Admin.NET.Web.Entry.dll" |
尽请期待下一章:智能制造之路—从0开始打造一套轻量级MOM平台之ASN管理(WMS)