如何使用Jekyll+GitHub Pages搭建我的博客站点

做为一名有情怀的工程师,通常都会经过博客来记录本身的生活,成长,工做心得或者经验,大部分人使用博客都会经历以下几个阶段:html

(1)记录在大脑中 (不推荐)git

(2)使用XXX云笔记github

(3)使用iteye,csdn,51cto,开源中国,博客园,简书,等等sql

(4)使用我的站点+微信公众号数据库

(一)Jekyll是什么ruby

jekyll是一个静态博客的生成器,它能够用来把咱们使用markdown来写好的文章给转换成静态网页html来发布。微信

(二)Github Pages是什么markdown

Github Pages 是面向用户、组织和项目开放的公共静态页面搭建托管服务,站点能够被免费托管在 Github 上,你能够选择使用 Github Pages 默认提供的域名 github.io 或者自定义域名来发布站点。Github Pages 支持 自动利用 Jekyll 生成站点,也一样支持纯 HTML文档。编辑器

(三)如何搭建使用post

前提条件:

git环境
github帐户
ruby环境

jekyll底层是使用ruby编写对,因此安装时候须要先安装ruby环境:

在mac先要安装一些软件,这里假设你对git环境已经有了:

brew install ruby

gem install jekyll

gem install bundler

gem install jekyll-paginate

gem install jekyll-gist

上面对软件安装完毕后,你就能够在github上搜索一个基于jekyll模版对项目,固然你能够从网上搜索任何你喜欢的主题风格,找到以后使用git clone到本身本地:

git clone xxx.git  myblog

cd myblog

jekyll server

而后访问http://localhost:4040端口就能够在本地预览你到博客了

若是你喜欢这个主题,那么你就能够fork到你本身到github中,而后clone下来,修改一些地方,而后就push到本身到仓库中,就能够了,一些git操做命令:

git add .
git commit -m "first commit"
git remote add origin https://github.com/alex-my/alex-my.github.io.git
git push -u origin master

关于jekyll的博客的目录结构,感兴趣的能够参考官网文档: http://jekyllcn.com/docs/structure/

咱们写的文章通常是在_posts目录里面,它的格式以下:

2018-04-11-spark sql大数据量下的调优和实践.md

前面是日期,中间是标题,后缀通常是md,看起来比较简洁。

(四)绑定本身到域名

最后说下github里面的项目,进入项目根目录后,点击右上角的Settings配置选项,在里面能够配置本身的站点域名,我这里配置的是我本身的域名,默认状况下通常都是 username.github.io好比个人是:

qindongliang.github.io

这样看起来有点简陋,那么绑定咱们已经有的域名到github pages上呢,很是easy,首先假设咱们已经有一个域名了,没有的话能够本身到网上买,而后在本身到静态站点到根目录下,新建以名字为CNAME到文件,里面的内容就是咱们的本身的域名,好比个人:

8090nixi.com

注意这里只须要域名后面的部分便可,不须要把http和www都写进来,而后登录域名管理中心,我这里是阿里云的找到域名解析部分,添加一条CNAME记录:

CNAME @  qindongliang.github.io

配置完毕以后,通常10分钟以内就能够生效,若是不出意外,一会就能够经过咱们自定义的域名访问咱们的静态站点了。

至此,一个属于咱们本身独立的我的站点就完成了,使用jekyll+github pages优缺点以下,借用阮一峰老师的总结:

优势:

   * 免费,无限流量。

  * 享受git的版本管理功能,不用担忧文章遗失。

  * 你只要用本身喜欢的编辑器写文章就能够了,其余事情一律不用操心,都由github处理。

缺点:

  * 有必定技术门槛,你必需要懂一点git和网页开发。

  * 它生成的是静态网页,添加动态功能必须使用外部服务,好比评论功能就只能用disqus。

  * 它不适合大型网站,由于没有用到数据库,每运行一次都必须遍历所有的文本文件,网站越大,生成时间越长。

但对于中小站点来讲,无疑是一个不错的方案,感兴趣的朋友能够尝试一下,我我的比较喜欢简洁的站点风格,你们能够经过我公众号底部的菜单栏的博客按钮感觉一下。

相关文章
相关标签/搜索