[小题大做] Github + Jenkins 实现自动化部署 hexo 博客静态文件

使用jenkins来部署hexo简直就是小题大做,但是偶尔这样小题大做还真有折腾的乐趣

背景

jianyujianyu.com之前是使用typecho做博客的。

原因很简单,wordpress太重,hexo很轻没错,可是这个没有后台管理(听说可以折腾成有后台管理的),每次写完博客都要deploy一下的hexo,我真心要不起。

而现在jianyujianyu.com是hexo了,经过也很简单,就是因为CA证书过期了,换证书的时候弄砸了,本着顺便过滤一波辣鸡博客的心思,重新弄,这次选择了hexo,不为什么,人生的选择就是这么奇妙。

那怎么不自己手写一个?说得好!不过我才不要。

用hexo不是不行,是要考虑deploy的事,或者,我换台电脑写博客,我没有这个hexo的node环境,我也不想登录服务器用着vim来写,比如我现在就安静在公司电脑上写博客。在这样的情况下,怎么deploy呢?在从前,wordpress和typecho有着后台管理,这个问题根本是不存在的。

想着想着,一拍脑袋,就直接用jenkins了,然后把代码放在github,包括hexo的整个文件夹。至于为啥用github而不用coding甚至是github pages,never mind。

设计的deploy过程很简单:

  • 我先clone了github上的hexo文件夹,添加了md文章,然后push
  • github整理好代码就通知jenkins:我这里资源更新了,大爷快来玩啊
  • jenkins收到消息,兽性大发地下了github上的代码
  • 拥有hexo环境的jenkins直接执行hexo g,产生了分泌物,也就是静态文件,在这里就是jianyujianyu.com的html网页内容(hexo/public)
  • 待定的nginx直接将用户请求拉向jianyujianyu.com的hexo/public文件夹即可

简单地设计完,便是动手开始。

环境准备

所有操作都是在Ubuntu的root用户下进行的,其他环境自行处理或转换

Java、Tomcat和Jenkins

jenkins是java的美好产物,为了后面调试起来简单,使用tomcat容器来装着这产物,而不是直接用apt下载。

(如果为了快捷,也可以只下载java和jenkins,然后通过java -jar jenkins.war来运行。不推荐。)

因此我们首先安装J8。

add-apt-repository ppa:webupd8team/java
apt update
apt install oracle-java8-installer

之后是安装tomcat。对应着J8,选tomcat8。先去tomcat官网下载包,然后解压。

wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值