怎么做前端自动化部署啊啊啊???

想问问大佬,如果我不使用JenkinsDocker,怎么做前端自动化部署?

目前我是这样做的,前端开发完成合并到master,然后npm run build打包,我写了个webpack插件用于打包后自动上传到aliyun-oss。上传完成后在对应的后台管理界面生成一条记录,界面如下:

clipboard.png

每一条记录是一个版本,可以随意切换版本。(注意:这里的项目都是SPA

现在我需要向大佬请教几个问题:
1. 按道理说,每个项目应该绑定不同的域名,这个应该如何解决(对我来说比较重要,请尽可能详细说明,小弟多谢~)
2. 我这种部署流程比较简单,如果按照大佬的想法,应该怎么去解决前端自动化部署方案呢?需要考虑哪些重要的点?

阅读 7.1k
5 个回答

我建议跑去后端区问(逃~)

每个项目不同的域名
没懂具体什么意思。
假如服务器 Nginx 配置,不同的域名对应不同的目录位置,只需要每个项目配置对应的上传地址,打包完成上传到不通的服务器目录就行了。
当然感觉这种情况用 docker 不是更好吗

自动化部署
其实整个流程都是可以用 npm script 跑起来的,你只是缺少一个触发器。不管是用的github 或者 gitlab 或者其他的代码托管工具,都可以用 webhook。如此:
1) 找一台本地机器,启动一个接收 webhook 的服务,写一个接口比如:/ci/hook/merge?project=111。内部实现就是pull一下仓库的代码,跑一下打包、测试、部署的 script 流程
2)在仓库上找到 webhook 设置,把你的接口填进去。

就像上面讲的,挂上webhook后用后台接收托管库传来的消息,在服务端封装一组git命令用于远程拉取代码,本地可以通过pm2来监控文件变化,在发生文件变化的时候执行build就行了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题