Github + HexoHexo

静态网站的动态化

2016-08-26  本文已影响166人  离岛LOGAN

说到静态网站的动态化,其实就跟想减肥又不愿多运动一个道理,那到底鱼和熊掌能不能兼得呢?静态网站确实有诸多优点但它的部署发布流程太繁琐了,之前我为了偷懒写了一个脚本每次写完文章一键发布!

后来在一次team分享会上cc同学提出了一个小创意说现在静态网站+markdown的组合非常流行,我们可不可以做一个移动版的app随时把写好的文章以静态网站的形式发布出去?而且兴致勃勃的说目前没有人这么做如果做出来肯定会火一把😄 。

最近在看持续集成相关的文章,然后发现完全可以通过CI+静态网站生成器+github手机客户端完成之前的idea,于是google了一下发现很多文章都有讲如何通过Travis、flow.ic等持续集成工具来发布由hexo、Jekyll等等静态网站生成器构建的博客,这仿佛也印证了那句话“当你想到一个idea的时候,可能有1000个人已经想到了,100个人在计划了,10个人准备全力去做了,一个人已经干出来了" 不过关键还是看执行力。

既然网上很多文章都有讲为什么还要来写这篇文章呢?还不是因为各种坑嘛,在实际搭建部署的过程中遇到各种莫名的环境配置问题,思路大家都懂😂

关于持续集成和静态网站生成器之类的概念在这里就不重复讲了,有问题自行google。

我的博客框架


我的博客系统是用Hexo+Travis CI+Github搭建的。
因为要使用Gitpage服务,所以生成的网页文件必须是在master分支

在Github上生成Access Token


在github的设置页面,点击左侧的Personal access tokens,然后点击右上角的Generate new token按钮,他会让你输入密码,最后进入下图的页面:

这里需要注意因为你要把这个token给CI服务器所以为了安全起见尽量只给必要的权限即可。

Travis CI的环境配置


这里我们把一些敏感的信息都配置在CI服务器上,例如:github的用户名、邮箱、Gitpage的地址、还有刚刚生成的Token。

.travis.yml的配置


这里我们还需要在存放博客源码的仓库里创建一个.travis.yml配置文件,如下图:

内容如下:

其中变量的含义:

愉快的发布文章


1、通过Android studio来管理发布博客
在AS中有很多不错的插件来支持markdown,这样我们就可以像平时写代码一样来写文章了,完成之后push到服务器,CI那边就会自动编译发布。

2、通过github网站直接发布文章
这种方式就更不依赖环境了,只要有一台可以联网的设备你就可以开心的写文章了。

3、通过github手机客户端
github推出了Android版的客户端,这样写文章是不是更容易了呢


FullStackEngineer的公众号,更多分享
上一篇下一篇

猜你喜欢

热点阅读