Jenkins实现博客更新自动部署

Jenkins实现博客更新自动部署_第1张图片

Jenkins实现博客自动更新部署

文章目录

  • Jenkins实现博客自动更新部署
    • 前情提要
      • 简单介绍
        • Jenkins
        • Hexo
    • 事情进展
      • 安装Jenkins
      • Jenkins新建任务
        • 补充插件
        • 任务配置
          • 构建触发器部分
    • 搞定

前情提要

有一台服务器,本来打算用来做游戏服务器的,但是它带不动【很疑惑,疑惑】,买都买了,不能浪费,那就搞个博客。

博客选了hexo框架,篇幅有限,就不介绍hexo安装及主题。

然后问题出现了,部署在服务器上,每次写是在本机上写,每次写完,本机push上去,然后又要跑到服务器上去pull一下,然后更新部署,这很麻烦,这不智能,这会让我不愿意写文章的,就像是买东西要多付运费,可能会让我放弃买这个东西。

所以,刚好学过jenkins,这不就刚好了吗。

简单介绍

Jenkins

Jenkins是一个CI工具。CI即持续集成,持续集成就是开发的代码立刻进行构建、测试,将新写的代码和原有的代码集成在一起。

看图标,也很显然,就是一个管家,很直观,是用来省事的工具。

Hexo

Hexo是一个快速、简洁高效的博客框架。我选用的这个框架的主要原因有三个:

  • 支持Markdown
  • 部署方便
  • 知识面有限,别的框架我也不知道,如果你有更好的框架推荐,请提醒我。【谢谢你,好心人】

事情进展

安装Jenkins

  • 有了想法就动起来,给我的服务器首先安装好nginx,npm,hexo,绑定域名,然后访问是正常访问的,为了解决自动化部署的问题,就要用到Jenkins,先安装它。
  • 参考链接
#安装 CentOs系统
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import http://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum clean all
yum makecache
yum install jenkins
#启动
# 检查Jenkins服务状态
sudo systemctl status jenkins
# 设置为开机自启动
sudo systemctl enable jenkins
# 启动Jenkins服务
sudo systemctl start jenkins
# 查看初始化密码
cat /var/lib/jenkins/secrets/initialAdminPassword
# 这个结果输入到Jenkins的Getting Started页面
  • 浏览器访问8080端口,进行初始化,插件安装推荐的那些插件。
  • 创建管理员账号,等待安装插件。

Jenkins新建任务

补充插件

  • 由于网络的影响,项目部署在gitee上,需要增加插件Gitee Plugin.
    • 添加方式:插件管理,可选插件,搜索,下载。
  • 插件下载好后,Jenkins -> Manage Jenkins -> Configure System -> Gitee Configuration -> Gitee connections添加Gitee链接

任务配置

  • 描述:【巴拉巴拉】你随意

  • 勾选GitHub项目,填入你的项目URL,配置你的Gitee链接

  • 源码管理:输入项目地址,Credentials添加你的登录凭证,账户密码或其他

  • build 分支选择指定分支

  • 构建

    • 执行shell

      • source /root/my-blog/do.sh

      • cd /root/my-blog/Blog
        git pull
        hexo clean
        hexo g
        
      • 此处注意,服务器要配置ssh,git操作就不用输入账号密码了。

构建触发器部分
  • 选择Gitee webhook触发构建
  • 登录gitee,在你的项目下选择管理,选择webhooks配置,添加。参考Gitee的WebHooks文档

搞定

Jenkins实现博客更新自动部署_第2张图片

你可能感兴趣的:(一些工具的使用,jenkins)