一、环境准备
VM 15下载
Centos 8下载
Xshell 6下载
Nginx 1.16.1下载
JDK 1.8下载
以下是链接
[百度网盘链接](https://pan.baidu.com/s/1frH4i_Z-2kt6cGzD22wlAw)
提取码:h6ay
二、windows安装VM
省略
三、VM创建虚拟机
省略
四、windows安装Xshell
省略
五、Centos8安装Nginx
-
xshell 与 linux 传输文件需要。
yum -y install lrzsz
-
gcc是linux下的编译器。
yum -y install gcc
-
pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库。
yum install -y pcre pcre-devel
-
zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装。
yum install -y zlib zlib-devel
-
openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔。。。。。。
yum install -y openssl openssl-devel
-
Xshell连接Centos8如下图
-
连接linux成功后创建安装nginx的目录
cd /usr/local
mkdir nginx
cd nginx
-
Xshell运行 rz 然后选择刚刚下载的Nginx上传,然后解压
tar -xvf nginx-1.16.1.tar.gz
如下图
默认安装到/usr/local/nginx 下./configure
make
如果make失败,运行以下命令
yum -y install gcc automake autoconf libtool make
make install
到此nginx安装成功,进入nginx文件夹并创建blog文件夹
cd nginx
(blog存放springboot jar包,jar包也通过Xshell上传到此文件夹)
mkdir blog
配置nginx反向代理
vi /usr/local/nginx/conf/nginx.conf
location / { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8080/; }
六、Centos8安装JDK
- 创建java文件夹
mkdir java
cd java
- Xshell运行 rz 然后选择刚刚下载的JDK
tar -xvf jdk-8u161-linux-x64.tar.gz
- 然后设置jdk环境变量 vi /etc/profile 在文件最后添加以下内容
#java export JAVA_HOME=/usr/local/java/jdk1.8.0_161 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
- 检测java环境是否安装成功,运行java和javac,如下图
七、开放端口
- 开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
- 查看端口
firewall-cmd --query-port=8080/tcp
- 重启防火墙
firewall-cmd --reload
八、shell脚本运行jar包
- 新建shell脚本文件,其内容如下
vim *.sh
#!/bin/bash #jar包文件路径及名称(目录按照各自配置) APP_NAME=/usr/local/nginx/blog/blog-0.0.1-SNAPSHOT.jar #日志文件路径及名称(目录按照各自配置) LOG_FILE=/usr/local/nginx/blog/log/blog.log #根据端口查询进程,并杀死当前jar/java程序 port=8080 pid=$(netstat -nlp |grep :$port | awk '{print $7}' | awk -F"/" '{print $1}'); kill -9 $pid echo "$pid进程终止成功" sleep 2 #判断jar包文件是否存在,如果存在启动jar包,并实时查看启动日志 if test -e $APP_NAME then echo '文件存在,开始启动此程序...' #启动jar包,指向日志文件,2>&1 & 表示打开或指向同一个日志文件 nohup java -jar $APP_NAME >> $LOG_FILE 2>&1 & #实时查看启动日志(此处正在想办法启动成功后退出) tail -f $LOG_FILE #输出启动成功(上面的查看日志没有退出,所以执行不了,可以去掉) #echo '$APP_NAME 启动成功...' else echo '$APP_NAME 文件不存在,请检查。' fi
- APP_NAME是jar文件路径
- LOG_FILE是日志输出路径,需要在该路径下新建blog.log
- 亲测可以的哦