使用Jekyll+GitHub Pages搭建个人博客

前言

Jekyll + GitHub Pages可以让你更加专注于博客内容,而不是如何搭建一个博客平台。Jekyll + GitHub Pages帮助你搭建专属于自己的个性化博客。

Jekyll

一、Jekyll是什么?

引用自官网
Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过一个转换器(如 Markdown)和我们的 Liquid 渲染器转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。Jekyll 也可以运行在 GitHub Page 上,也就是说,你可以使用 GitHub 的服务来搭建你的项目页面、博客或者网站,而且是完全免费的。

Jekyll就是将纯文本转化为静态博客网站,不需要数据库支持,也没有评论功能,想要评论功能的话可以借助第三方的评论服务。

二、搭建本地Jekyll环境

注:安装jekyll会用到ruby,最好不要用系统自带的,使用系统提供的ruby会出现没有权限问题,建议使用rbenv新安装一个ruby使用。

具体安装ruby可以参考:
Mac环境配置

  • 设置全局ruby版本
$ rbenv global 2.6.0 #例如设置新安装的2.6.0版本为全局版本
$ gem env home #验证gem
  • 使用gem安装Jekyll
$ gem install jekyll
  • 安装bundler
$ gem install bundler
  • 使用Jekyll创建博客仓库
$ jekyll new myblog
  • 进入myblog目录 开启Jekyll服务
$ cd myblog
$ jekyll serve

Jekyll服务默认端口是4000,打开浏览器,输入:http://localhost:4000就能看到一个简单的博客页面。

三、Jekyll的一些常用命令

当前文件夹中的内容将会生成到 ./_site 文件夹中。
$ jekyll build

当前文件夹中的内容将会生成到目标文件夹<destination>中。
$ jekyll build --destination <destination>

指定源文件夹<source>中的内容将会生成到目标文件夹<destination>中。
$ jekyll build --source <source> --destination <destination>

当前文件夹中的内容将会生成到 ./_site 文件夹中,查看改变,并且自动再生成。
$ jekyll build --watch

一个开发服务器将会运行在 http://localhost:4000/
$ jekyll serve

功能和`jekyll serve`命令相同,但是会脱离终端在后台运行。
如果你想关闭服务器,可以使用`kill -9 1234`命令,"1234" 是进程号(PID)。
如果你找不到进程号,那么就用`ps aux | grep jekyll`命令来查看,然后关闭服务器。
$ jekyll serve --detach

四、Jeykll的目录结构

├── _config.yml             (配置文件)
├── _drafts                 (drafts(草稿)是未发布的文章)
|   ├── begin-with-the-crazy-ideas.textile
|   └── on-simplicity-in-technology.markdown
├── _includes           (加载这些包含部分到你的布局)
|   ├── footer.html
|   └── header.html
├── _layouts                (包裹在文章外部的模板)
|   ├── default.html
|   └── post.html
├── _posts                (这里都是存放文章)
|   ├── 2007-10-29-why-every-programmer-should-play-nethack.textile
|   └── 2009-04-26-barcamp-boston-4-roundup.textile
├── _site               (生成的页面都会生成在这个目录下)
├── .jekyll-metadata      (该文件帮助 Jekyll 跟踪哪些文件从上次建立站点开始到现在没有被修改,哪些文件需要在下一次站点建立时重新生成。该文件不会被包含在生成的站点中。)
└── index.html         (网站的index)

GitHub Pages

一、创建一个仓库

转到GitHub并创建一个名为username.github.io的新存储库,在Settings里面找到Github Pages,选择一个主题

二、克隆仓库

$ git clone https://github.com/username/username.github.io

三、部署Blog

  • 开启Jekyll服务
$ cd username.github.com

打开http://localhost:4000,可看见我们在Github上创建的主页
$ jekyll serve
  • 选择你想要的主题,进行更改,然后推送到仓库
$ git add --all
$ git commit -m "jekyll页面"
$ git push origin master
  • _config.yml配置必须符合GitHub Pages的规定模式
highlighter: rouge
markdown: kramdown

四、申请个人域名

域名申请国内一般使用万网,国外使用Go Daddy

  • 创建CNAME,添加你的域名
 $ git add CNAME
 $ git push origin master
  • DNS提供商,DNS解析创建一个CNAME记录
主机记录www,记录类型为CNAME类型,CNAME表示别名记录,该记录可以将多个名字映射到同一台计算机,
记录值请写username.github.io
  • 创建A记录,记录值为GitHub Pages的IP地址
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
  • 自定义域升级HTTPS
GitHub的username.github.io仓库中,进入Settings, GitHub pages选项中勾选Enforce HTTPS选择即可。
如不可勾选,请核对DNS解析中A记录中记录值是否正确

Jekyll+GitHub Pages相关链接

Jekyll官方中文文档

GitHub Pages官方网址

使用GitHub Pages帮助

Jekyll主题网站

如何快速给自己构建一个温馨的"家"——用 Jekyll 搭建静态博客

疑难杂症解决链接


本文首发于我的个人博客 https://limeng99.club/,转载请标明出处。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352