前端用shell脚本在服务器部署

前端用shell脚本在服务器部署

背景

  1. 公司一般都有devOps,推荐使用这个操作
  2. 公司服务基于k8s部署,k8s是有流水线工程的,如果有条件的话,还是建议使用流水线部署, 方便而且容易追溯。
  3. 我写这个是因为公司流水线部署卡顿,容易受到运维同学影响。而且错误频出。还是不完善版本,极易耗费时间。因此,萌生了自己写一个部署脚本的念头。
  4. 本流程基于linux系统

流程

  1. 先本地打包,生成zip包
  2. 把zip包上传到服务器上
  3. 在服务器运行部署脚本
  4. 部署成功

脚本

  1. 本地打包
# !/bin/bash
# 进入打包目录
npm run build
# 生成zip包
zip -rv dist.zip dist
  1. 上传到服务器
# 通过lftp来登陆
lftp -u ${user},${password} sftp://${ip}:${port}<<EOF
# 登陆服务器后进行的操作
# 进入对应文件夹 
# 上传zip包
EOF
  1. 服务器运行部署脚步
# 服务器此时已有部署脚步
# sshpass 通过sshpass登陆ssh
sshpass -p password root@ip <<remotessh
# 执行在服务器的操作
remotessh
  1. 如此大功告成

小记

  1. k8s容器名可以写一个前缀,然后用时间催做后缀
date=data-center/data-center-web:dev-`date +%s`
  1. 安装lftp
brew install lftp
  1. 安装sshpass
# sshpass 是一个免登录上ssh的工具
# 因此 sshpass不能通过brew安装 需要手动安装
# 通过下载到本地进行安装
# 如果提示xcode命令行相关的。请根据提示来一遍就好了
wget https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb
brew install sshpass.rb
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值