一、前言 前面我們選定了Admin.net來搭建我們的MOM快速開發平臺,本章主要描述.NET6平臺的Linux部署,以及記錄搭建過程中坑。 本次搭建我們選擇某雲的輕量應用伺服器,系統選擇CentOS 7.6,資料庫使用Mysql。參考配置如下: 二、搭建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)
生命是一個過程,可悲的是這個過程不能夠重來,可喜的是這個過程不需要重來!