1. 安装scp2
npm i scp2 --save-dev
  1. 新建文件upload.js

与package.json同级

  let client = require('scp2');
  const ora = require('ora');
  const chalk = require('chalk');
  const spinner = ora(chalk.green('正在发布到服务器...'));
  spinner.start();

  client.scp('./dist/', {    // 本地打包后,项目包的相对路径,默认为./dist
  "host": '106.12.123.173', // 云服务器的IP地址
  "port": '22',            // 云服务器端口, 一般为22
  "username": 'root',       // 云服务器用户名,linux系统一般为root
  "password": '******',     // 云服务器密码,若忘记了,可以去云服务器主页重置密码
  "path": '/root/itNote'   // 项目包上传到云服务器的目标位置,根据nginx配置决定
}, err =>{
  spinner.stop();
  if (!err) {
    console.log("项目发布完毕!")
  } else {
    console.log("err", err)
  }
})
  1. 添加自动部署命令

在package.json的scripts的末尾添加

    "upload": "node upload.js",
    "pub": "npm run build && npm run upload"
4.运行命令,自动打包部署
npm run pub
5.控制台输出 “ 项目发布完毕! ” 时,即部署成功

发表评论