自学内容网 自学内容网

Linux之项目部署与发布

前言

Linux项目部署与发布的好处在于提供了一个稳定、灵活、高效和安全的运行环境,有助于项目快速响应需求、保持可维护性并提供良
上篇博主已经讲解了部署单机项目Linux之JAVA环境配置Tomcat离线安装与启动单机项目部署(实施必会!!!)详细步骤
jdk、tomcat、MySQL都已经安装配置好
本篇博主讲解前后端项目部署

一、通常步骤

①准备环境
②代码获取
③配置文件
④编译/构建
⑤测试
⑥部署
⑦配置服务
⑧启动服务
⑨监控与日志
⑩发布

二、Nginx

先把之前博主部署的单机项目删除

rm -rf oapro*

在这里插入图片描述

2.1nginx安装

1)一键安装4个依赖

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

在这里插入图片描述
在这里插入图片描述
2)下载并解压安装包

tar -xvf nginx-1.13.7.tar.gz -C /usr/local/java/

在这里插入图片描述
在这里插入图片描述
3)安装nginx
进入安装包目录

cd nginx-1.13.7

在这里插入图片描述
编译,执行配置: 考虑到后续安装ssl证书 添加两个模块

./configure --with-http_stub_status_module --with-http_ssl_module

在这里插入图片描述
安装&编译

make && make install

在这里插入图片描述
4)启动 nginx 服务
安装好的 nginx 服务在 /usr/local/nginx 下:
在这里插入图片描述
进入 /usr/local/nginx/sbin 目录下启动:
在这里插入图片描述
在这里插入图片描述
启动

./nginx

在这里插入图片描述

查看是否启动

ps -A | grep nginx

在这里插入图片描述
还可以借助lsof
需要下载

yum install -y lsof

在这里插入图片描述

下载完 输入命令直接看端口

lsof -i:80

在这里插入图片描述
重启

./nginx -s reload

关闭

./nginx -s stop

或者,指定配置文件启动

./nginx -c /usr/local/nginx/conf/nginx.conf

接下来开放80端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

在这里插入图片描述
跟新防火墙规则

firewall-cmd --reload

防火墙列表

firewall-cmd --zone=public --list-ports

在这里插入图片描述
完成之后去外部访问一下看nginx有没有成功

在这里插入图片描述
然后设置开机自启动

vi /etc/rc.d/rc.local

在这里插入图片描述

/usr/local/nginx/sbin/nginx

在这里插入图片描述
在这里插入图片描述
接下来去授权

 chmod 755 rc.local

在这里插入图片描述
此时就可以开机自启动了
重启reboot

三、多个Tomcat负载配置,后端项目部署

在这里插入图片描述
在这里插入图片描述
停掉之后,切到根目录下
在这里插入图片描述
复制一个变成8081

cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20-8081/

在这里插入图片描述
现在我把这两个服务都启动起来
在这里插入图片描述
把名为8081的端口改了

cd ../../apache-tomcat-8.5.20-8081/conf/
vi server.xml

在这里插入图片描述
在这里插入图片描述
端口不能重复
在这里插入图片描述
在这里插入图片描述
然后把8081的端口启动起来
在这里插入图片描述
然后再去开放8081的端口

firewall-cmd --zone=public --add-port=8081/tcp --permanent
刷新
firewall-cmd --reload
查看端口
firewall-cmd --zone=public --list-ports

在这里插入图片描述
在这里插入图片描述
就可以去访问了
在这里插入图片描述
在这里插入图片描述
那么接下来就让nginx去负载这两个Tomcat
配置负载
切到conf
在这里插入图片描述
在这里面有一个文件

vi nginx.conf

在这里插入图片描述
不建议在这里面改,容易出现乱码
在这里插入图片描述
借助工具改
在这里插入图片描述
在这里插入图片描述
加上一个服务

upstream  tomcat_list {  #服务器集群名字
server    127.0.0.1:8080  weight=1;   #服务器1   weight是权重的意思,权重越大,分配的概率越大。
server    127.0.0.1:8081  weight=1; #服务器2   weight是权重的意思,权重越大,分配的概率越大
} 

复制进去
在这里插入图片描述

location / {
      #root   /usr/share/nginx/html;
      #proxy_pass   http://172.17.0.3:8080;
      proxy_pass   http://tomcat_list;
      index index.html index.htm;
  }

在这里插入图片描述
搞完了之后只需要做一个事情
重启nginx服务,让配置生效

./nginx -s reload

在这里插入图片描述
完成之后你就可以发现nginx就可以负载到两个Tomcat
在这里插入图片描述
测试看一个Tomcat死机了
在这里插入图片描述
发现是没有影响的,因为还有一个8081的tomcat
只不过8080不能访问了
在这里插入图片描述
到目前为止,nginx负载就搭建好了
对于前后端项目而言,我们要把后端的项目放进来
放到Tomcat里面
在这里插入图片描述
在这里插入图片描述
启动之前先把脚本导入进去
在这里插入图片描述
另一个Tomcat也是一样的重复上面的操作
在这里插入图片描述
完了之后重启Tomcat
在这里插入图片描述
到目前为止8080、8081都有这个项目了
在这里插入图片描述
在这里插入图片描述

四、前端项目部署

我先建一个文件夹
在这里插入图片描述
进到里面去
在这里插入图片描述
在这里插入图片描述
然后去解压
安装

yum install - unzip

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后接下来去配置它
在这里插入图片描述
在这里插入图片描述
加一个路由的过滤

server_name  www.zking.com; #当前服务的域名(虚拟域名也可以)
root         /usr/local/mypro/dist;      #将要访问的网站的根目录,nginx节点会自动继承父节点的配置;这里放到/usr/local/*,放到其他路径下会有权限相关问题;必要的时候配置Nginx.conf的user为root

在这里插入图片描述
代理配置

location / {
#该句代码是为解决history路由不能跳转的问题,在vue-router官网有介绍 
try_files $uri $uri/  /index.html;
}
location  ^~/api/ {
#^~/api/表示匹配前缀是api的请求,proxy_pass的结尾有/, 则会把/api/*后面的路径直接拼接到后面,即移除api
proxy_pass http://tomcat_list/;
}

在这里插入图片描述
域名需要在windows服务下配置

C:\Windows\System32\drivers\etc

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重启nginx服务

cd ../sbin
./nginx -s reload

就成功了,可以去访问
在这里插入图片描述


原文地址:https://blog.csdn.net/2301_77744536/article/details/136287847

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!