.netcore部署linux、国产化环境

前言:

本文基于centos7.9操作系统,服务器x86/x64,所有操作在虚拟机中操作,记录部署过程中出现的问题,在此记录解决方案。

查看系统版本命令:

cat/etc/redhat-release

cat/proc/version

uname-m

df-Th

fdisk-l

 

  

 

其他系统可能略有不同,参照博客https://www.cnblogs.com/zwbsoft/

注意:本文所有yum方式为在线安装,并且使用yum install -downloadonly命令下载离线包,确保无网络进行安装

yum install -downloadonly-downloaddir=/tmp<package-name>

需要安装项目如下

donet环境,NGINX服务,core项目前后台,solr服务,solr推送,报表打印,统计功能,转换PDF,MongoDB数据库,mysql数据库。

1.安装操作系统

 如果客户机没有安装系统,需自行下载镜像制作U盘,在此不再赘述

然后再系统中用U盘启动进行安装

注意事项1:安装时一定要先设置网卡,否则不会自动安装。

 

 

 注意事项2:如果想直接在服务器上操作图形界面,安装时选择图形选项

 

2.远程环境

2.1 xshell

正常情况下,默认可以直接使用22端口进行ssh连接

 

 

 2.2 vnc-viewer

如果centos系统是最小化安装,需先安装gnome desktop,否则略过此步骤。

安装命令:yun groupinstall -y GNOME Desktop 

安装完成启动图形化界面 :systemctl set-default graphical.target

执行以下命令安装vnc服务

yum install tigervnc -y

 

 

 通过命令:rpm -ga|grep tigervnc-server验证是否安装成功

安装完成后输入命令vncserver,第一次启动需要输入密码,按操作提示即可,密码设置后会出现如下信息,如图

 

 

 从图中看出桌面号为1

启动vnc-viewer新建一个连接,输入ip地址:桌面号

 

 

 添加完成后,双击添加的桌面,输入之前的密码,完成登录

 

 

 

 

 

 

 

 

 如果连接超时,请关闭防火墙或开放端口

防火墙关闭命令:systemctl stop firewalld service

禁止防火墙关机自启动:systemctl disable  firewalld service

添加防火墙例外:firewall-cmd --zone=public -add-port=5901/tcp -permanent

重启防火墙:firewall-cmd --reload

查看例外端口:firewall-cmd --list-port

3.环境部署

3.1 文件传输

通过xshell连接后,cd进入保存文件的文件夹,使用rz命令进行上传。

 

 

 3.2 安装dotnetcoresdk

3.2.1 首先将压缩包上传到服务器

 

 

 3.2.2 解压缩

mkdir -p/app/dotnet/netcore3.1

tar zxf dotnet-sdk-3.1.404-linux-x64-tar.gz -C app/dotnet/dotnet3.1

3.2.3 创建软连接

  sudo ln -s /app//dotnet/dotnet3.1/dotnet /usr/local/bin

3.2.4 测试安装结果

dotnet --version

 

 

 

 

* Process terminated .Couldn't find a valid ICU package installed on the system .Set the configuration flag System .Globalization .Invariant to true if you want to run with no globalization support
解决方式:有外网或者配置本地源:yum install libicu 或
https :// centos.pkgs .org/7/centos-x8664 /libicu-50.2-4.el77 .x8664 .rpm.html 下载libicu -50.2-4.el77.x8664.rpm包进行rpm安装 
3.3安装配置nginx 
    3.3.1安装nginx
        添加源:

 

默认情况Centos 7中无Nginx 的源,可以如下执行命令添加源: 

sudo rpm -uvhhttp ://nginx.org /packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx .noarch .rpm

确认添加成功:
yum search nginx
输入命令进行安装:
yum install - ynginx .
测试是否安装成功:

 

 3.3.2 配置nginx

使用命令修改配置文件

vim/etc/nginx/conf.d/conf.d/default.conf

在下图高亮部分设置端口号,服务ip地址,及前端项目路径及日志路径

 

 将下图高亮部分修改为:

location/{

root / usr/share/nginx/html;

try files Suri Suri /@ router; 

index index .html index .htm :

}


location @ router{

rewrite ^ .*$/ index.html last :

}

 

 

 设置完成后重启服务  systemctl restartnginx.service

查看服务状态  systemctl status nginx.service

 

 设置开机启动

systemctl enable nginx.service

3.4 安装配置mysql

3.4.1 检查是否存在Mariadb 

Centos 7已经不支持msql,所以内部集成了mariadb ,,而安装mysg l的话会和mariadb 的文件冲突,所以需要先卸载掉mariadb .
列出所有被安装的rpm package : 
rpm - qa|grep mariadb 

 

 卸载Mariadb

rpm -e --nodeps mariadb-libs

 

3.4.2安装 mysql
首先安装mysql8.0的资源库:
yum localinstall https://repo.mysql.com//mysql80-community-release-el7-1noarch .rpm
安装mysql8.0
 
yum-y install mysql-community-server
3.4.3配置mysql
修改配置文件:
vim / etc/my.cnf

在最后添加一行:

 

   同时修改datadir为指定路径

 

 

创建mysql用户及用户组(如果已经存在则省略)

groupadd mysgl .
useradd-g mysql mysql
进行授权:
chown-R mysql .mysql / app/mysql8.0/
确认权限

 

 启动mysql并配置开机自启

systemctl start mysqld

systemctl enable mysgld .

如果遇到初始化失败,一般为selinux 的问题,执行命令手动关闭: 

setenforce 0
或者修改配置永久关闭:
修改/etc/selinux /config 文件中设置SELINU -disabled

 

 查看密码并重置

查看密码:grep 'temporary password' var/log/mysqlId.log

 

 使用密码登录

 

 修改密码校验规则与密码长度:

mysql >set global validate password.policy =0

mysql >set global validate password.length =1

 

修改密码: 
mysql >ALTER USER ' root'@'localhost'IDENTIFIED BY ' root@123'
重新登录测试:

 修改允许远程连接:

mysql>update mysql user set host =%'where user ="root";


mysql >flush privileges ;

使用第三方工具进行登录

 

 登录成功后新建数据库

 

 初始化脚本:

 

 

 

 3.5 安装配置MongoDB

3.5.1 安装MongoDB

把压缩包考入

 

 解压压缩包: 

tar-zxvf mongodb-linux-x86 _64-rhel70-4.2.8.tgz
重命名解压的文件夹:
mv mongodb-linux-x86 64-rhel70-4 .2.8/ app/mongodb
创建用于存放数据和日志文件的文件夹,并修改读写权限
cd mongodb
sudo mkdir-p data /db
sudo chmod-r data /db
sudomkdir logs
cd logs
touch mongodb.log
3.5.2配置mongodb
在bin目录创建一个配置文件:

cd / app/mongodb/bin/
sudo vi mongodb .conf
写入以下内容:
dbpath =app/mongodb/data/db#数据文件存放目录 
logpath =app/mongodb /logs/mongodb .log#数据文件存放目录
port=27017#端口号
bind ip =0.0.0.0#设置可以远程连接
fork=true#设置后台可以运行
# auth=true #这个注释掉权限认证
启动数据库:
cd / app/mongodb/bin 
./mongod -f mongodb .conf
 
登录mangodb 控制台:
./mongdb
在mongodb 控制台新建数据库: 
use amscore
插入一条数据集,建立数据库:
db .amscore .insert ({name:ams' ,age :22 }
再使用命令查询建立的数据库:
show dbs

 

 第三方软件看到效果

 注:如客户要求建立mongodb 账户,并且使用账户登录数据库,请自行百度教程。

3.6安装配置solr 

      3.6.1安装Java环境
首先检查是否有java环境:java - version 
如果没有,执行命令:yum install - y java-1 .8.0-openjdk.x86_64

 

3.6.2安装solr服务 
将solr安装包上传到服务器后解压压缩包
unzip - d/ app/solrsolr-8 .5.0.zip
 
3.6.3配置solr服务 
修改进程数: Vim / etc/security/limits.conf
在文件底部添加:
*soft nofile 65000
*hard nofilr 65000
*soft nproc 65000
* hard nproc 65000
注:limits .conf后需要重启服务器
启动slor服务:
Cd/app/solr/bin
./solr start-force
之后就可以通过IP+默认端口8983进入设置界面进行设置了。
4.系统部署:
4.1前台页面部署配置
将文件放入nginx 中配置的路径下并解压,修改配置文件config .txt

 

 将baseurl 和baseurlLocal 指向后端程序的P和端口

4.2后端服务部署配置

将文件放入需要部署的文件夹下并解压,修改配置文件appsettings.ison

 

 主要修改内容为:数据库类型、数据库连接地址、数据库名、之前设置的账号密码、solr的ip地址Mongodb 不需要在此处设置,直接读取数据库内配置 

配置完成后在项目文件夹下使用如下命令开启服务: 
dotnet AMS .dll- urls http :*5000
注:建议图形界面登录系统后开启一个终端窗口执行此命令,xshell 执行关闭连接后会关闭,
此时需要使用nohup 启动进程,nohup dotnet AMS .dll--urls http://10.1.32.0:5000>/dev/null2>log&具体详情请百度

4.3solr推送服务部署配置
将文件放入需要部署的文件夹下并解压,修改配置文件appsettings .json 

 

 主要修改内容为:数据库类型、数据库连接地址、数据库名、之前设置的账号密码、solr的iP地址。Mongodb 不需要在此处设置,直接读取数据库内配置。

配置完成后在项目文件夹下使用如下命令开启服务:dotnet ConsoleApp1

注1:在执行OCR识别时可能会提示缺少> libdl..so,使用whereis命令查询一下系统的此文件,路径,使用mv命令把文件拷贝到solr推送程序的runtimes // linux-64/native 下可以解决问题

注2:在执行OCR识别时可能会提示找不到liblept 1760.so和libtesseract 400.so文件,这是因为Linux 发行版本不同,需要单独编译的文件,将文件拷贝到solr推送程序的X64文件夹下可以解决问题。

注3:建议图形界面登录系统后开启一个终端窗口执行此命令,xshell 执行关闭连接后会关闭,此时需要使用nohup 启动进程nohup dotnet ConsoleApp 1.dll>/dev/null2>log&,具体详情请百度。

4性能监控服务部署配置

将文件放入需要部署的文件夹下并解压,修改配置文件appsettings.json

 

  主要修改内容为:数据库类型、数据库连接地址、数据库名、之前设置的账号密码

配置完成后在项目文件夹下使用如下命令开启服务:dotnet PerformanceAPI.dll

注:图形界面登录系统后开启一个终端窗口执行此命令,xshell 执行关闭连接后会关闭,此时需要使用nohup 启动进程nohup dotnet ConsoleApp 1.dll>/dev/null2>log&,具体详情请百度。

 4.4 报表服务部署配置
将文件放入需要部署的文件夹下并解压,修改配置文件appsettings.json

 

主要修改内容为:数据库类型、数据库连接地址、数据库名、之前设置的账号密码

配置完成后在项目文件夹下使用如下命令开启服务:dotnet WebDesigner MVC'(Core')'.dll --urls http://*58721

注:图形界面登录系统后开启一个终端窗口执行此命令,xshell 执行关闭连接后会关闭,此时需要使用nohup 启动进程nohup dotnet WebDesigner MVC'(Core')'.dll --urls http://*58721>/dev/null2>log&,具体详情请百度。

注意2:因为有括号,需要单引号将括号在扩起来。
 
posted @ 2022-12-12 14:32  zwbsoft  阅读(1007)  评论(0编辑  收藏  举报