版本说明
- centos 7(虚拟机中)
- Java 1.8
- Nginx=1.21.6
准备一个项目
systemctl reload nginx使配置生效
Java环境搭建
-
先查看本地是否自带java环境:
yum list installed |grep java -
如果装了自行卸载,没装就安装Java1.8
yum -y install java-1.8.0-openjdk* -
查看Java安装路径:which java
/usr/bin/java -
找Java安装路径
which java ls -lrt /usr/bin/java(也就是上一步查询出来的路径),然后回车 输入ls -lrt /etc/alternatives/java(也就是上一步查询出来的路径),然后回车 从路径中可以看到在jvm目录下,输入cd /usr/lib/jvm,跳转到jvm的目录 输入ls 列出当前目录下的文件和文件夹 -
配置Java环境变量
输入vi /etc/profile去编辑环境变量 # java export JAVA_HOME=/usr/lib/jvm/java-1.8.0 export JRE_HOME=$JAVA_HOME/jre export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib输入source /etc/profile,使配置立即生效
springboot项目打成jar包
- 现有的Springboot工程,使用maven打包。clean+package
-
进入jar包目录下,运行测试,确保可以成功启动
将项目部署到Nginx中
-
将前面的jar包上传到指定目录,我这里是/home/projects。
-
在服务器中后台运行jar包
nohup java -jar 文件名 &
Nginx服务配置
该服务器为主要入口,在此可以做负载均衡,用户请求到达改服务器,根据配置做跳转。
因为我设置的是服务器组,在upstream中,所以将项目所在的服务器地址修改成目的地址
如果是单机,直接在proxy_pass设置即可
systemctl reload nginx使配置生效
网关配置
因为项目所在服务器通常是不允许外网访问的,这里只开放端口给我们的Nginx所在服务器。
-
开启项目所在机子防火墙
systemctl restart firewalld -
配置防火墙规则,项目启动端口是8080,单独开放给Nginx
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="Nginx服务器的IP" port protocol="tcp" port="8080" accept" -
重载规则
#重载规则 firewall-cmd --reload -
firewall-cmd --list-all可以查看到我们添加是否成功,至此配置完毕