• 瑞吉外卖项目实战Day9-前后端分离,项目部署


    瑞吉外卖项目实战Day9-前后端分离,项目部署

    准备:

    服务器A:192.168.205.128

    • Nginx:部署前端项目,配置反向代理
    • Mysql:主从复制结构中的主库

    服务器B:192.168.205.128

    jdk:运行Java项目

    git:版本控制工具

    maven:项目构建工具

    jar:Spring Boot项目打成Jjar包基于内置Tomcat运行

    Mysql:主从复制结构中的从库

    Redis:缓存

    部署前端项目

    上传文件

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FmMdvsMT-1660269783812)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220811175646932.png)]

    配置Ngnix配置文件:

    配置反向代理

            server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

            location / {
                root   html/dist;
                index  index.html;
    }
     
    #反向代理配置
    location ^~ /api/ {
    rewrite ^/api/(.*)$ /$1 break;
    proxy_pass http://192.168.67.1:8080;
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    启动nginx

    访问ngin首页就能看见自己部署的前端页面了

    后端项目部署

    在服务器B中部署

    将代码克隆下来

    使用reggieStart.sh脚本上传到服务器B,通过chmod命令设置执行权限

    #!/bin/sh
    echo =================================
    echo  自动化部署脚本启动
    echo =================================
    
    echo 停止原来运行中的工程
    APP_NAME=reggie_take_out
    
    tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
    if [ ${tpid} ]; then
        echo 'Stop Process...'
        kill -15 $tpid
    fi
    sleep 2
    tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
    if [ ${tpid} ]; then
        echo 'Kill Process!'
        kill -9 $tpid
    else
        echo 'Stop Success!'
    fi
    
    echo 准备从Git仓库拉取最新代码
    cd /usr/local/reggie_take_out
    
    echo 开始从Git仓库拉取最新代码
    git pull
    echo 代码拉取完成
    
    echo 开始打包
    output=`mvn clean package -Dmaven.test.skip=true`
    
    cd target
    
    echo 启动项目
    nohup java -jar reggie_take_out-1.0-SNAPSHOT.jar &> reggie_take_out.log &
    echo 项目启动完成
    
    
    
    • 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

    图片加载失败:

    将图片路径修改后提交到git远程仓库

    并将图片资源添加到指定目录中

  • 相关阅读:
    TypeScript核心
    【python】Numpy统计函数总结
    延迟任务多种实现姿势--下
    linux驱动开发:linux设备模型
    Spring之@Column的注解详解
    WIN10操作系统解决磁盘文件只读属性问题
    MM32F0020 UART1中断接收和UART1中断发送
    Mybatis深入:数据源概念介绍
    建一个chrome插件crx所需步骤
    【java】java线程池
  • 原文地址:https://blog.csdn.net/qq_57907966/article/details/126298347