项目部署流程:
- 先下载一个supervisor软件,这个软件可以管理部署的springboot应用。
- 项目打成jar包,放在/mnt下面
- 在/etc/supervisord.d目录下面创建配置文件,作用是编写启动项目命令,jar包位置,日志输出位置
- 在/etc/nginx/*.conf下面创建nginx的配置文件,这个nginx配置文件作用是域名访问,端口转发
提示:后端项目部署需要jdk和mysql环境,jdk在服务器安装就好了,我的mysql是在docker安装
下载xterminal
服务器安装supervisor
1 2 3
| yum install -y supervisor systemctl enable supervisord # 开机自启动 systemctl start supervisord # 启动supervisord服务
|
重启所有配置文件和服务
查看正在运行的应用在线状态
启动一个应用
1
| supervisorctl start 应用名字
|
停止一个应用
更新修改过的配置文件
1 2
| supervisorctl reread supervisorctl update
|
丢jar包
在/mnt目录下面新建一个jar的目录,把打包好的springboot应用放上去
nginx配置,在etc的conf下面的
配置文件
在/etc/supervisord.d目录下面新建*.ini文件,然后写入下面代码,主要内容有:项目名称,jar包目录,jar包启动命令,日志输出目录
1 2 3 4 5 6 7 8
| [program:ppoapi] directory = /mnt/jar/ command = java -jar -Dspring.profiles.active=test ppoapi.jar autorestart = true startsecs = 1 stdout_logfile_maxbytes = 50MB stdout_logfile_backups = 20 stdout_logfile = /mnt/jar/ppoapi.log
|
nginx转发
在/etc/nginx目录下面的conf.d下面创建*.conf文件,利用nginx的请求转发,直接通过域名访问后端接口。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| server { # listen 80; listen 443 ssl; server_name zouwen.xin; root /home/www/website;
ssl_certificate "/home/ssl/zouwen.xin.pem"; ssl_certificate_key "/home/ssl/zouwen.xin.key"; # 后端请求 location /demo/ { proxy_pass http://127.0.0.1:9001/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } # 后端请求 location /ppoapi/ { proxy_pass http://127.0.0.1:9000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
# location ~ /door/ { # index index.html; # root /mnt/home/granary-door-web/build/; # try_files $uri $uri/ /door/index.html =404; # }
# 配置项 location ~ .*\.(js|css)?$ { expires 12h; } location ~ /.well-known { allow all; } location ~ /\. { deny all; } access_log /mnt/home/logs/zouwen.log; error_log /mnt/home/logs/error.log; }
|