Vue3 工程化实践:一键式 Shell 自动化部署方案

2026-02-01 构建 Nginx, Vue3
## 直击痛点 在构建VUE项目的过程中,每次打包上云都是一个漫长的等待: - 手动执行`npm run build` - 使用远程工具登录服务器 - 进入对于目录,使用`rm -rf`删除旧文件 - 上传新文件 ![传统部署方式](/blog/articles/1769956629200-292.png) ## 核心脚本实现 使用最传统的脚本进行'优雅'的部署,将以上复杂的操作转换成一次双击 在项目根目录下新建`deploy.bat`填充以下内容 ``` batch @echo off chcp 65001 setlocal :: ===== 基础配置区 ======= set SERVER_IP="服务器IP地址" set SERVER_USER="登录名" :: 这里的路径需与你的 Nginx 配置中的 root 保持一致 set REMOTE_DIR=/var/www/html :: ===================== echo [1/3] 开始本地打包构建... call npm run build echo [2/3] 清理云端旧文件... :: 确保部署环境干净,避免旧缓存 ssh %SERVER_USER%@%SERVER_IP% "rm -rf %REMOTE_DIR%/*" echo [3/3] 正在上传最新静态资源... :: 将 dist 目录下的所有内容同步到服务器 scp -r dist/* %SERVER_USER%@%SERVER_IP%:%REMOTE_DIR%/ echo ======================================== echo 前端部署完成! echo ======================================== pause ``` ## 技术细节 ### 1. 使用SCP递归上传,一行代码完成所有命令 ### 2. 环境变量与路径 将脚本中对应的配置更换成你自己的,双击之后仅需一次输入密码即可实现自动化部署 ### 3.中文乱码问题 脚本顶部`chcp 65001`就是解决Windows下中文乱码的关键 ## 进阶操作 - 免密登录 ### 1.获取SSH KEY 进入终端执行 `ssh-keygen -t ed25519 -C "your_email@example.com"` ### 2.获取公钥内容 进入以下目录 `C:\Users\用户名\.ssh` 找到`id_ed25519.pub`文件,将该文件内所有内容粘贴到服务器`/root/.ssh/authorized_keys`文件内 经过这样的配置,就彻底解决了本机登录服务器需要输入密码的问题 (千万不要泄露你的私钥噢)
本文由一方天地发布 · 查看完整体验