Hexo持续部署最佳实践::Netlify+IDEA+Github

14次阅读

共计 1568 个字符,预计需要花费 4 分钟才能阅读完成。

Hexo 被称为是最佳的静态博客程序之一,然而其繁琐的环境搭建、构建,发布过程,让很多人望之却步,转而使用了传统的 WordPress 等博客程序,抛开维护成本不说,本着折腾一切的心态,最终研究出了一套完善的自动部署方案。
Hexo 特色

超快速度: Node.js 所带来的超快生成速度,让上百个页面在几秒内瞬间完成渲染。

支持 Markdown: Hexo 支持 GitHub Flavored Markdown 的所有功能,甚至可以整合 Octopress 的大多数插件。

一键部署: 只需一条指令即可部署到 GitHub Pages, Heroku 或其他网站。

丰富的插件: Hexo 拥有强大的插件系统,安装插件可以让 Hexo 支持 Jade, CoffeeScript。

目前市面上还存在很多类似的静态网站生成器,详情请查看:https://www.staticgen.com/<!— more —>
如何实现优雅发布
就目前而言,Hexo 发布的方式有以下几种:

原始方式,即在本地搭建相关环境,编写 md 文件后,手动 hexo g 生成静态文件,然后通过 hexo deploy 发布到 Github Pages;
利用 Github + Webhook 来实现自动发布(这个需要一台自己服务器)详见:http://www.swiftyper.com/2016…

使用第三方的 Hexo-Client、Hexo-Admin 等程序,详见:https://github.com/search?q=h…

使用 Travis CI 持续部署 Hexo,详见:https://www.jianshu.com/p/569…

使用 Netlify 进行优雅地持续部署。详见:https://www.netlify.com

简要流程

使用 Github 登陆 Netlify。
使用 StaticGen 一键初始化 Hexo 仓库。
将 Hexo 源码仓库 Clone 到本地,调整网站配置,编写文章。
本地无需 Nodejs、NPM、Hexo 环境,修改完成后 Push 到 Github,Netlify 检测到仓库变更后实现自动部署。

在 Netlify 整个部署过程中, 你只需要提交代码, 其余的 master 部署预览 (包括 MR 的预览), HTTPS 证书, 静态资源的优化与 CDN 加速, 部署消息通知, 等等都不用再操心. 真的是太优雅了!
创建项目
在 StaticGen 上选择 Hexo

使用 Github 登陆

设置一个 Github 仓库名

轻点 3 步,轻松实现网站上线

第一步:自动部署
不用做任何设置, 每次 master 分支有更新代码, Netlify 就会帮你自动部署代码. 图为部署记录
实时看到部署的日志:
第二步:自定义域名
默认情况下,Netlify 为我们分配了一个随机域名(可以自定义二级域名、独立域名)
第三步:开启 Https
自动生成 Let’s Encrypt 的证书, 也支持上传自己的证书,详见:https://www.netlify.com/docs/…
其他:Netlify 的优缺点
优点:

提供 webhook 的形式触发部署
提供 Html 代码注入
自动优化
自动部署通知

缺点:不能检测到 git submodule 的变更
关于 Markdown 编辑器
现在我们已经完成了 Hexo 的持续部署,将 Hexo 源码项目 Clone 到本地后,可以使用 IDEA 导入,IDEA 内置的 Markdown 编辑器正好用来写文章,而 IDEA 内置的 Git 版本管理工具也不赖,哈哈,如此一来,书写博客就如同写代码一般,写完提交到 Git 即可。
此外、IDEA 内置的 Markdown 编辑器不支持插入图片,我这里写了个轻量级的 Markdown 编辑器扩展程序, 支持粘贴图片文件然后上传到七牛云存储, 然后生成 Markdown 图片标记插入到文章中。
详见 https://gitee.com/wuwenze/mar…

效果图

附我的博客:https://wuwenze.com/

正文完
 0