当前位置:首页 >> 网络编程

vue-cli3项目打包后自动化部署到服务器的方法

一、安装 scp2

npm install scp2 --save-dev

二、写好脚本
例如 upload.js (下面任选一个即可)
位置和 package.json平级即可。

简略版

'use strict'
// 引入scp2
var client = require('scp2');

client.scp('./dist/', { // 本地打包文件的位置
 "host": 'XXX.XX.XX.XXX', // 服务器的IP地址
 "port": 'XX',   // 服务器端口, 一般为 22
 "username": 'XXX',  // 用户名
 "password": '*****',  // 密码
 "path": 'XXX'   // 项目部署的服务器目标位置
}, err =>{
 if (!err) {
 console.log("项目发布完毕!")
 } else {
 console.log("err", err)
 }
})

稍微美化下控制台的输出

'use strict'
// 引入scp2
var client = require('scp2');
// 下面三个插件是部署的时候控制台美化所用 可有可无
const ora = require('ora');
const chalk = require('chalk');
const spinner = ora(chalk.green('正在发布到服务器...'));
spinner.start();

client.scp('./dist/', { // 本地打包文件的位置
 "host": 'XXX.XX.XX.XXX', // 服务器的IP地址
 "port": 'XX',   // 服务器端口, 一般为 22
 "username": 'XXX',  // 用户名
 "password": '*****',  // 密码
 "path": 'XXX'   // 项目部署的服务器目标位置
}, err =>{
 spinner.stop();
 if (!err) {
 console.log(chalk.green("项目发布完毕!"))
 } else {
 console.log("err", err)
 }
})

"htmlcode">

"upload": "node upload.js",
"deploy": "npm run build && npm run upload"

四、执行脚本

npm run deploy

运行这个脚本命令之后,它会先npm run build执行打包命令,然后,执行node upload.js,将打包的文件上传到服务器