从零搭建项目(13) --- 部署: 使用jenkins自动化部署
来源:     阅读:546
云上智慧
发布于 2020-04-24 13:00
查看主页

我的博客地址

正式地址
演示网站
前台源码
后台源码

文章目录

  1. 项目及其技术栈详情
  2. 前台: 项目初始化
  3. 前台: 使用Sass和Antd
  4. 前台: 开发体验优化
  5. 前台: 搭建路由和状态管理
  6. 前台: 支持Axios
  7. 前台: 打包与环境变量设置
  8. 前台: 团队代码规范
  9. 后台: 项目初始化和使用Koa相关
  10. 后台: 使用TypeORM和MySQL
  11. 部署: 使用nginx部署前台项目
  12. 部署: 后台部署
  13. 部署: 使用jenkins自动化部署

前言

这篇文章将是从零搭建博客系列的最后一篇,将会详情jenkins的安装以及配合github webhook进行前后台项目的自动化部署,主要内容如下:

  1. 安装jenkins
  2. 配置jenkins和github webhook

安装jenkins

安装jenkins之前,首先看看他的配置需求:


image.png

基本上腾讯云的学生机都可以跑起来。

wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'sudo apt-get updateecho y|sudo apt-get install jenkins

安装完毕后他会自动退出进程:

image.png
之后输入sudo service jenkins start开启jenkins,jenkins相关命令如下:
sudo service jenkins start|stop|restart
而后我们在浏览器中输入服务器ip:8080,jenkins默认监听8080端口,稍等一会后会进入到该页面:
image.png

注意: jenkins有可能由于防火墙跑不起来,这时候可以输入sudo ufw allow 8080开放指定的端口,腾讯云的防火墙默认是关闭的,所以不存在这个问题。

配置jenkins和github webhook

这一节详情如何将github与jenkins连接起来,详情只以前台项目为例,由于前后台配置是一样的。

填写完名字后,选择创立一个自由风格项目,而后确定:


image.png

接着去到jenkins自己的系统管理界面:


image.png
image.png

在github项点击增加github服务器:


image.png
image.png

而后输入名称,点击增加按钮增加jenkins凭证:


image.png

之后再弹出框中填写如下,之后点击确定:


image.png

而后在下拉框中选择你刚才填写的形容项,并勾上管理hook按钮:


image.png

点击连接测试,出现如下即为成功,点击底下的保存后退出:


image.png

我们回到刚才新建的项目中,点进去配置页面:


image.png
image.png

第一项General勾选github项目,并将项目地址填进去:

image.png

第二项源码管理:


image.png

假如上面的Credentials没有选项,点击增加按钮选择jenkins,在弹出框中填写如下图,增加完毕后在点下拉框应该就要选项了:


image.png

第三项构建触发器选项:


image.png

第四项构建环建中选择该项:


image.png

之后下面会出现一个绑定项,点击新添加,选择secret text:


image.png
而后选择之前填写的标识:
image.png

第五项构建选择执行shell,这个shell是在你的项目上传到github,github通知给jenkins之后执行的脚本:


image.png

比方下面一个简单的shell脚本:
安装依赖 -> build出静态文件 -> 将静态文件移到目标目录:


image.png
编辑完成后点击保存按钮。

验证成果

之后我们在前台中增加一行字,而后push到github上:


image.png

再来到jenkins中查看,你会发现项目开始自动部署了:


image.png
你可以点击进度条查看部署进度:
image.png

等待部署完成后,刷新页面,最新的效果就出来了:


image.png

后台部署的方式和前台相似,在这里就不做赘述了,大家也可以自己实践一下。

后记

从零搭建项目系列到这里就结束了,本打算再通过一篇文章写写把前台资源弄到cdn上去,但迫于目前已经没有已备案域名,所以这一步只能往后延,等以后有心思了再补上。
也希望大家能够提出意见帮助我调整文章内容,使其更易懂,帮到更多的人。

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境 服务器应用
相关推荐
史上最清晰的 Tarjan 算法详解
JXPopupView:一个轻量级的自己设置视图弹出框架
browsersync:浏览器同步测试工具
温故知新——JavaScript中的字符串连接问题最全总结
学再多的Excel高级技能,都不如掌握这个工具!
首页
搜索
订单
购物车
我的