前言:

本文基于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:因为有括号,需要单引号将括号在扩起来。
 

.netcore部署linux、国产化环境的更多相关文章

  1. .netcore部署Linux并结合Nginx反向代理 get started

    一..NetCore网站准备与发布 首先准备好一个ASP.NET Core Web应用程序,我这里就使用新建的示例站点作为demo演示,使用dotnet publish 命令发布网站. 或者使用VS的 ...

  2. oneinstack一键部署linux生产环境那点事(ubuntu)

    http://oneinstack.com/install/ (1)将oneinstack-full.tar.gz最新版安装文件上传至/usr/local/下 (2)解压tar xzvf oneins ...

  3. 【netcore基础】CentOS 7.6.1810 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

    之前写过一篇Ubuntu的环境搭建博客,感觉一些配置大同小异,这里重点记录下 nginx 作为静态 angular 项目文件服务器的配置 参考链接 [netcore基础]ubuntu 16.04 搭建 ...

  4. 【netcore基础】ubuntu 16.04 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

    今天来整理下 netcore 在 linux(ubuntu) 上的运行环境搭建 对应版本 ubuntu 16.04 .net core 2.1 nginx version: nginx/1.10.3 ...

  5. 国产中标麒麟Linux部署dotnet core 环境并运行项目 (一) 安装dotnet core

    背景 根据我之前写的文章 将 Net 项目升级 Core项目经验:(一)迁移Net项目为Net Core\Standard项目,我们将公司内部最核心的ORM框架迁移到net core 上面,并在win ...

  6. 从零开始,将ASP.NET Core部署到Linux生产环境

    研究.NET Core已经一段时间了,一直都是在Windows上开发,这2天尝试着将公司一个很简单的内部Web项目改造成了ASP.NET Core,并且部署到Linux上.生产环境如下: Linux ...

  7. 记录Linux CentOS 7系统完整部署Docker容器环境教程

    笔者之前有在"详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程"文章中有介绍到利用Ubuntu系统安装Docker容器环境的过程.如果我们有使用CentOS ...

  8. [Linux基础环境/软件]Linux下安装resin web服务器(涉及gcc、jdk环境部署)

    由于Ubuntu自带是没有jdk和gcc编译器的,而安装resin需要C编译器和jdk的支持,而且resin本身是java写的.另外我本身的网站是zip打包的,所以linux也要安装了gcc.jdk. ...

  9. Linux:Ubuntu下部署Web运行环境

    Linux:Ubuntu下部署Web运行环境 本次博客将会从三部分内容详述Ubuntu系统下Web运行环境的配置: 依次是:FTP服务器的搭建.MYSQL数据库的搭建.JDK的安装等. 参考文章如下: ...

  10. 《Linux就该这么学》培训笔记_ch20使用LNMP架构部署动态网站环境

    <Linux就该这么学>培训笔记_ch20使用LNMP架构部署动态网站环境 文章最后会post上书本的笔记照片. 文章主要内容: 源码包程序 LNMP动态网站架构 配置Mysql服务 配置 ...

随机推荐

  1. [OpenCV实战]43 使用OpenCV进行背景分割

    运动背景分割法Background Segment主要是指通过不同方法拟合模型建立背景图像,将当前帧与背景图像进行相减比较获得运动区域.下图所示为检测图像: 通过前面的检测帧建立背景模型,获得背景图像 ...

  2. MSIC总结取证分析——日志分析

    MSIC总结取证分析 一.日志分析: 1.常见日志分析类型: 2.常见一些考点: (1)还原特定IP攻击手段(SQL注入.暴力破解.命令执行等),或还原最初攻击时间: (2)寻找flag或者特定文件解 ...

  3. 02-Sed语法介绍

    1 Sed语法介绍 介绍Sed支持的基本命令及其命令行语法,Sed可以通过以下两种形式进行调用: 学习sed命令使用之前,需要掌握正则表达式的用法. sed [-n] [-e] 'commands' ...

  4. linux环境编程(1): 实现一个单元测试框架

    写在前面 在开发的过程中,大多数人都需要对代码进行测试.目前对于c/c++项目,可以采用google的gtest框架,除此之外在github上搜索之后可以发现很多其他类似功能的项目.但把别人的轮子直接 ...

  5. angular--路由导航三种方法

  6. 【随笔记】MFC 解决按下 ESC、Enter 键会自动退出的问题

    网上大部分人的做法是通过拦截按键消息来屏蔽,实际正确的做法是: 1. 在对话框头文件重载 OnOK()(回车会触发) 和 OnCancel()(ESC会触发) 函数. // XXXXXXXDlg.h ...

  7. C语言定制DEBUG信息

    C语言定制DEBUG信息 背景与问题 在日常编写程序中,我们经常需要输出一些调试信息帮助我们 DEBUG 或者更好的编程,通常我们的做法是这样的: 在需要的地方直接printf(...)输出有用的信息 ...

  8. 微机原理与系统设计笔记3 | 8086cpu指令系统

    打算整理汇编语言与接口微机这方面的学习记录.本部分介绍8086的指令系统(一些与程序设计密切相关的如子程序调用指令放在下一部分). 参考资料 西电<微机原理与系统设计>周佳社 西交< ...

  9. java优化几个小步骤

    1.top查看消耗cpu高的java程序进程2.ps -mp [替换为进程ID PID] -o THREAD,tid,time3.printf "%x" 114134.stack ...

  10. Django框架之drf:9、接口文档,coreapi的使用,JWT原理、介绍、快速使用、定制、认证

    目录 Django框架之drf 一.接口文档 二.CoreAPI文档生成器 1.使用方法 三.JWT 1.JWT原理及介绍 2.JWP快速使用 3.定制返回格式 4.JTW的认证类 Django框架之 ...