Linux前后端分离项目详细部署

本文详细介绍了如何在Linux系统上安装和配置JDK、Tomcat、MySQL以及Nginx,包括环境变量设置、服务启动、防火墙管理、自启动脚本和负载均衡等内容,适用于IT技术人员进行基础服务器配置学习。
摘要由CSDN通过智能技术生成

1.jdk安装

1.查看是否安装jdk了

Java -version

2.进入opt目录

3.将所需文件放入opt里去

4.进入解压到的目录

cd /usr/local/
创建新文件
mkdir java
重新进入opt文件里
cd /opt
解压刚刚的文件
tar -zxvf  jdk-8u151-linux-x64.tar.gz -C /usr/local/java

提示:其实如果自己也记不得全就写一半按Tab键会自动补全

5.进入java文件夹

cd  /usr/local/java/ 
配置环境变量
vim /etc/profile
在其中加入以下内容
提示:i进入编辑模式    按ESC  :wq保存并退出
#java environment
export JAVA_HOME=/usr/local/java/jdk1.8.0_151(记得改jdk解压路径)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
设置环境变量生效
source /etc/profile
测试
Java -version

2.tomcat安装

1.进入解压目录

cd /opt/
解压到刚刚创建的文件夹里
tar -zxvf  apache-tomcat-8.5.20.tar.gz -C /usr/local/java
进入目录查看解压是否成功
cd  /usr/local/java/ 
ll

2.启动服务

#   进入bin目录
cd  apache-tomcat-8.5.20/bin/
#启动
./startup.sh

3.开防火墙8080

#开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#刷新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports
#重启服务器
reboot

4.创建自启动脚本

cd /usr/local/java/apache-tomcat-8.5.20/bin/
 
 
#将catalina.sh拷贝到init.d目录下
cp /usr/local/java/apache-tomcat-8.5.20/bin/catalina.sh /etc/init.d
 
#进入文件夹并查看
cd /etc/init.d/
ll
 
#重命名文件为tomcat
mv catalina.sh tomcat

5.编辑启动文件

vim tomcat
要放入编辑的文件中
JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20
加注释,方便看资料
#chkconfig:23456  10 90
#description: tomcat service
2345表示这个4个运行级别会自动开机自启动,10是启动优先级,90是关闭优先级
编辑完,tomcat程序会执行下面文件
chkconfig  --add tomcat
重启动查看tomcat是否启动
reboot

3.MySQL步骤

检查是否有自带mysql
rpm -qa|grep mariadb
rpm -e --nodeps+刚刚查出的复制到后面
进入解压目录
cd  /usr/local/java/
创建mysql文件夹
mkdir mysql-5.7
进入并查询
cd  /opt/ 
 
ll

解压
tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C /usr/local/java/mysql-5.7/

开始安装配置

#进入目录
cd /usr/local/java/mysql-5.7/
 
rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

-ivh:
i 代表安装      v代表安装过程     h代表

启动MySQL服务
systemctl start mysqld
设置自启动 
systemctl enable mysqld.service
登录mysql修改密码
grep "password" /var/log/mysqld.log
mysql -uroot -p
把密码根据上面输入即可,密码不会显示

#设置密码校验策略(0 or LOW),要不密码太LOW不让你过
set global validate_password_policy=0;
#设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)
set global validate_password_length=4;
#更新密码
set password = password("123456");
#数据库没有授权,允许以root身份远程登录mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
#输入后使修改生效还需要下面的语句
FLUSH PRIVILEGES;
#可以退出,试试用新密码重新登录
exit

开放防火墙 
#开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#跟新防火墙规则
firewall-cmd --reload
#防火墙列表
firewall-cmd --zone=public --list-ports

测试数据库是否能连接

关机重启 
reboot
再测试一下数据库

4.nginx安装

如果有单机项目, 需要删除再部署前后端分离项目
cd /usr/local/java/apache-tomcat-8.5.20/webapps/
ll
rm -rf oapro*
ll
安装nginx所需要的依赖
cd /opt/
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

上传文件

解压安装包
tar -xvf nginx-1.13.7.tar.gz -C /usr/local/java/

后面是解压到的位置 

可以去查看是否解压成功

cd  /usr/local/java/

ll

安装ssl证书(https)
cd  /usr/local/java/
 
# 进入安装包目录
cd nginx-1.13.7
 
考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
 
安装
make && make install

查看
cd /usr/local/java
ll
cd /usr/local
ll
cd nginx/
ll

conf:放配置文件的----负载均衡、反向代理、动静分离

html:静态资源,前端项目可以在这里

logs:放日志

sbin:放启动命令

进到目录,启动
cd sbin/
ll
./nginx

其他:

# 重启
./nginx -s reload

# 关闭
./nginx -s stop

# 或者,指定配置文件启动
./nginx -c /usr/local/nginx/conf/nginx.conf

检查nginx是否启动
方法一:
ps -A | grep nginx

方法二:
下载lsof
yum install -y lsof
lsof -i:80

lsof -i:8081

开80端口
#开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
 
#跟新防火墙规则
firewall-cmd --reload
 
#防火墙列表
firewall-cmd --zone=public --list-ports

测试

端口号+回车

设置自启动
cd /usr/local/nginx/sbin/
 
#启动
./nginx
 
vim /etc/rc.d/rc.local
 
 
#加的内容,然后退出并保存
/usr/local/nginx/sbin/nginx
 
#设置权限 
cd /etc/rc.d/
 
chmod 755 rc.local
 
ll

在测试一下
reboot

5.后端部署tomcat负载均衡

搭建nginx 具体步骤

停了之前服务
cd /usr/local/java/apache-tomcat-8.5.20/bin
./shutdown.sh

复制80端口变成8081端口(其实是80,复制出80,之前那个变成81)
cd ../../
cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20-8080/

 启动80服务
 cd apache-tomcat-8.5.20/bin/
./startup.sh

改端口
改三个,端口号在之前基础上都加一就行  5改成6  0改成1 9改成10
cd  ../../apache-tomcat-8.5.20/conf/
vim server.xml

 

进入bin,启动端口号
cd ../bin/
./startup.sh

开放8081
#开放端口
firewall-cmd --zone=public --add-port=8081/tcp --permanent
 
#跟新防火墙规则
firewall-cmd --reload
 
#防火墙列表
firewall-cmd --zone=public --list-ports

进入conf目录

方法一:
cd  /usr/local/nginx/conf/
 
ll
 
vim nginx.conf

加2个内容:

1、设置负载两个端口

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

2.反向代理
proxy_pass http://tomcat_list;
Ctrl+s保存即可

重启服务
cd /usr/local/nginx/conf/
 
cd  ../sbin/
 
./nginx  -s reload

测试 
使用nginx就端口号后不用加端口号,就等价于我设置的两个端口号

停一个tomcat测试能不能使用,现在停的是8081
cd /usr/local/java/apache-tomcat-8.5.20/bin/
 
./shutdown.sh

8081端口不能访问了

6.部署后端项目 具体步骤

cd ../webapps/
 
pwd

 

重启tomcat
cd ../bin/
 
./startup.sh

 

7.前端部署具体步骤

放前端项目(开发提供)

cd  /usr/local/
 
#建目录
mkdir mypro
 
#进入
cd mypro/

 

安装解压
yum  install -y unzip

unzip+文件名字

配置文件
cd dist
 
pwd
 
cd  /usr/local/nginx/conf/

 #替换内容一
 
 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/;
	}

配域名
Ctrl+R
输入:
C:\Windows\System32\drivers\etc

在后面加自己端口号 +www.zking.com,保存

重启
cd ../sbin/
./nginx -s reload

测试输入端口即可

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值