部署总流程
总流程
- 本地同步远程分支
- 本地构建 docker 镜像
- 本地打包 docker 镜像
- 上传 docker 镜像到服务器
- 解压服务器 docker 镜像
部署命令行
// 本地开发环境
"start": "node cross-env NODE_ENV=development ./src/server.js",
// 本地开发环境
"dev": "cross-env NODE_ENV=development nodemon ./src/server.js",
//本地链接生产环境
"prod": "cross-env NODE_ENV=production node ./src/server.js",
//本地链接测试环境
"test": "cross-env NODE_ENV=test nodemon ./src/server.js",
//sql服务
"sqlserver": "cross-env NODE_ENV=test node ./src/server.js",
//pm2 测试环境
"pm2:test": "pm2-runtime start pm2.json --env test",
//pm2 生产环境
"pm2:prod": "pm2-runtime start pm2.json --env production",
// 构建docker测试环境
"build:test": "cross-env NODE_ENV=test && node ./deploy/index.js build",
// 构建docker生产环境
"build:prod": "cross-env NODE_ENV=production && node ./deploy/index.js build",
//上传docker包到测试服
"upload:test": "cross-env NODE_ENV=test && node ./deploy/index.js upload",
//上传docker包到正式服
"upload:prod": "cross-env NODE_ENV=production && node ./deploy/index.js upload",
//解压测试服docker包
"decompress:test": "cross-env NODE_ENV=production && node ./deploy/index.js decompress",
//解压正式服docker包
"decompress:prod": "cross-env NODE_ENV=production && node ./deploy/index.js decompress",
//构建、上传、解压docker测试服包
"deploy:test": "cross-env NODE_ENV=test && node ./deploy/index.js",
//构建、上传、解压docker正式包
"deploy:prod": "cross-env NODE_ENV=production && node ./deploy/index.js"
About 14 min