点击上方“老王聊前端”,选择“关注公众号”
每天前端开发干货第一时间送达!
作者: 寒夜梦未央
链接: https://juejin.im/post/6872914108979609614
前端一键自动部署工具?
由于本人最近在公司负责的项目较多,部署起来比较麻烦,部署环境还非常多(有本地开发、测试、生产)多个环境的部署,非常的占用时间。也使用过 Jenkins
、GOCD
等持续集成部署工具。但是一方面由于配置比较麻烦,很多前端的同事并不会配置这些持续集成工具并且公司项目比较多,前端、后台大家都使用一台 Jenkins
服务器,导致部署比较慢。并且生产环境是需要使用 VPN 内网部署的环境,Jenkins
无法部署,导致每次部署都需要手动打包,手动部署上去,非常麻烦。所以做了这么一款前端一键自动部署工具,来减少部署项目所带来的时间的浪费。
请阅读下方文本熟悉工具使用方法。
deploy-cli-service
前端一键自动化部署脚手架服务,支持开发、测试、生产多环境配置。配置好后一键即可自动完成部署。
- GitHub github.com/fuchengwei/…
- Npm www.npmjs.com/package/dep…
- 更新日志 github.com/fuchengwei/…
1 安装
「全局安装 deploy-cli-service」
npm install deploy-cli-service -g
复制代码
「本地安装 deploy-cli-service」
npm install deploy-cli-service --save-dev
复制代码
「查看版本,表示安装成功」
deploy-cli-service -v
复制代码
「注:本地安装的在调用前需要加 npx
」
npx deploy-cli-service -v
复制代码
2 使用(以下都以全局安装为例)
「2.1 查看帮助」
deploy-cli-service -h
复制代码
「2.2 初始化配置文件(在项目目录下)」
deploy-cli-service init # 或者使用简写 deploy-cli-service i
复制代码
根据提示填写内容,会在项目根目录下生成 deploy.config.js 文件,初始化配置只会生成 dev (开发环境)、test (测试环境)、prod (生产环境) 三个配置,再有其他配置可参考模板自行配置。
「2.3 手动创建或修改配置文件」
不使用上面的初始化命令的可以手动创建配置文件。在项目根目录下手动创建 deploy.config.js
文件,复制以下代码按情况修改即可。
module.exports = {
projectName: 'vue_samples', // 项目名称
privateKey: '/Users/fuchengwei/.ssh/id_rsa',
passphrase: '',
dev: {
// 环境对象
name: '开发环境', // 环境名称
script: 'npm run build', // 打包命令
host: '192.168.0.1', // 服务器地址
port: 22, // 服务器端口号
username: 'root', // 服务器登录用户名
password: '123456', // 服务器登录密码
distPath: 'dist', // 本地打包生成目录
webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
isRemoveRemoteFile: true // 是否删除远程文件(默认true)
},
test: {
// 环境对象
name: '测试环境', // 环境名称
script: 'npm run build:test', // 打包命令
host: '192.168.0.1', // 服务器地址
port: 22, // 服务器端口号
username: 'root', // 服务器登录用户名
password: '123456', // 服务器登录密码
distPath: 'dist', // 本地打包生成目录
webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
isRemoveRemoteFile: true // 是否删除远程文件(默认true)
},
prod: {
// 环境对象
name: '生产环境', // 环境名称
script: 'npm run build:prod', // 打包命令
host: '192.168.0.1', // 服务器地址
port: 22, // 服务器端口号
username: 'root', // 服务器登录用户名
password: '123456', // 服务器登录密码
distPath: 'dist', // 本地打包生成目录
webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
isRemoveRemoteFile: true // 是否删除远程文件(默认true)
}
}
复制代码
「2.4 部署 (在项目目录下)」
注意:命令后面需要加 --mode
环境对象 (如:「--mode dev」)
deploy-cli-service deploy --mode dev # 或者使用 deploy-cli-service d --mode dev
复制代码
输入 Y
或按下 Enter
键确认后即可开始自动部署,看见如下提示说明部署完成
「2.5 本地安装扩展」
如果使用本地安装命令的话,可以在项目根目录下的 「package.json」 文件中 scripts
脚本中添加如下代码
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"deploy:dev": "deploy-cli-service deploy --mode dev",
"deploy:test": "deploy-cli-service deploy --mode test",
"deploy:prod": "deploy-cli-service deploy --mode prod"
}
复制代码
然后使用下面代码也可以完成部署操作
npm run deploy:dev
复制代码
好文和朋友一起看~