前后端项目部署方案汇总

Vue项目

1、本地打包部署

# 本地打包部署到线上服务器
npm run build && \
rsync -r ./dist/* root@127.0.0.1:/www/www.demo.com/www

2、服务器端打包部署

步骤

拉取代码 -> 安装依赖 -> 打包编译 -> 拷贝到运行目录 -> 发送成功消息

shell命令

cd /www/www.demo.com/www && \
git pull && \
export PATH="/usr/local/node-v16.20.2/bin:$PATH" && \
pnpm i --no-frozen-lockfile --registry=https://registry.npmmirror.com && \
npm run build && \
mkdir -p www && \
/usr/bin/cp -R ./dist/* ./www

if [ $? -eq 0 ]; then
    # 部署完成
    curl -H "Content-Type:application/json" -X POST -d '{"to": ["123456@qq.com"], "subject": "【Runner】部署完成", "body": "部署完成 https://www.demo.com/"}' http://127.0.0.1:8080/sendEmail
else
    # 部署失败
    curl -H "Content-Type:application/json" -X POST -d '{"to": ["123456@qq.com"], "subject": "【Runner】部署失败", "body": "部署失败 https://www.demo.com"}' http://127.0.0.1:8080/sendEmail
fi

Nuxt项目

supervisor配置文件

[program:demo-www]
environment=NODE_MODE=alpha
directory=/data/wwwroot/www.demo.com
command=/usr/local/node-v16.20.2/bin/node node_modules/nuxt/bin/nuxt.js start
user=www
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=1
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=1
stopasgroup=true
killasgroup=true

Java项目

本地打包部署脚本

#!/bin/bash
# 打包脚本
mvn clean package -P prod && \
rsync -rtvz --progress ./target/dist/demo-api/* root@127.0.0.1:/data/wwwroot/www.demo.com/www && \
ssh root@127.0.0.1 '/data/wwwroot/www.demo.com/www && /usr/bin/supervisorctl restart demo-api'

if [ $? -eq 0 ]; then
    echo 'success'
else
    echo 'error'
fi

supervisor配置文件

[program:demo-api]
directory=/data/wwwroot/www.demo.com/www
command=/usr/bin/java -jar ./demo-api.jar --spring.profiles.active=pro
user=www
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=1
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=1

相关推荐

  1. 前后项目部署方案汇总

    2024-07-13 16:28:02       23 阅读
  2. Linux部署前后项目

    2024-07-13 16:28:02       51 阅读
  3. Docker部署前后项目

    2024-07-13 16:28:02       35 阅读
  4. centos部署前后项目

    2024-07-13 16:28:02       30 阅读
  5. Ubuntu部署前后分离项目前端vue,后jar包)

    2024-07-13 16:28:02       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 16:28:02       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 16:28:02       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 16:28:02       57 阅读
  4. Python语言-面向对象

    2024-07-13 16:28:02       68 阅读

热门阅读

  1. Python基础总结之字典元素的删除方法详解

    2024-07-13 16:28:02       23 阅读
  2. 搭建安全扩展

    2024-07-13 16:28:02       18 阅读
  3. 金币程序题

    2024-07-13 16:28:02       22 阅读
  4. Docker Compose 启动容器例子

    2024-07-13 16:28:02       20 阅读
  5. vue3下载base64文件

    2024-07-13 16:28:02       22 阅读
  6. 使用 WebSocket 进行实时数据传输

    2024-07-13 16:28:02       22 阅读
  7. Redis中的管道技术

    2024-07-13 16:28:02       19 阅读
  8. C语言学习第一章--分步编译

    2024-07-13 16:28:02       17 阅读
  9. 力扣题解( 最长数对链)

    2024-07-13 16:28:02       20 阅读