一小时内使用Jekyll搭建自己的GitHub博客

2 minute read

这里主要讲下自己是怎么一步一步从零开始搭建自己的博客的。

安装ruby

如果你的本机是macOSx,则执行如下命令即可完成ruby的安装:

brew install ruby

如果机器是其他操作系统,这里就不详述了,可以去参考下Ruby官方安装文档

另外,如果gem没有安装成功,可以参考RubyGems去安装gem。

安装Jekyll

在命令行里执行如下命令,即可完成jekyll的安装:

gem install jekyll bundler

备注: bundler类似于python的pip工具,用于管理项目中的包依赖等,非常好用;另外,bundler需要项目根目录有一个Gemfile文件,类似python项目的的requirements.txt文件。

创建自己的GitHub Pages

请进入GitHub Pages,按照步骤创建自己的站点。

如果需要本地配置,请参考GitHub Pages本地设置

初始化自己的站点

在命令行里执行如下命令,即可完成jekyll站点的初始化:

jekyll new myblog

进入项目,即可进行本地测试:

cd myblog/
bundle exec jekyll serve

添加Jekyll主题

我自己选择了Minimal Mistakes主题。

创建或者编辑根目录下的Gemfile,增改或者增加如下代码:

source "https://rubygems.org"

gem "github-pages", group: :jekyll_plugins
gem "jekyll-remote-theme"

执行如下命令,确保包依赖安装完毕:

bundle update

修改根目录下的_config.yml文件:

增加remote_theme: "mmistakes/minimal-mistakes"

然后将jekyll-remote-theme添加至自己_config.yml文件中plugins数组中,例如:

plugins:
  - jekyll-remote-theme

最后,你可以使用bundle exec jekyll serve测试主题是否添加成功了。

撰写博文

撰写博文时,需要将文件放在_post目录下,文件名的格式一般为YEAR-MONTH-DAY-title.MARKUP

YEAR是一个四位数时,MONTHDAY必须都是两位数,MARKUP是文件名后缀,下面两个是正确的例子:

2016-06-04-hello-world.md
2017-08-18-writing-blogs.markdown

如何撰写不熟悉markdown文件,请参考:

配置评论

在配置staticman V2时,需要关注以下几点:

  • reCaptcha的密钥等设置,需要在_config.ymlstaticman.yml两个文件中都添加。
  • reCaptcha的secret需要进行staticman密钥加密

本地无法启动问题

在本地启动时如果出现如下报错,基本上是因为国内网络下载或者unzip解压有问题导致。

jekyll 3.6.2 | Error:  Zip end of central directory signature not found

出现这种问题,可以考虑采取以下两种方式:

第一种:将依赖的包解压换成rubyzip,例如:

gem 'jekyll-remote-theme', github: 'benbalter/jekyll-remote-theme', branch: 'rubyzip'

第二种:如果是remote_theme无法下载,可以考虑将依赖提前下载安装,theme直接使用,例如:

  • 首先,将gem "minimal-mistakes-jekyll"加入到Gemfile
  • 然后,执行bundle install更新依赖
  • 最后,在_config.yml文件中设置theme: minimal-mistakes-jekyll,需要将原来的remote_theme设置移除

参考文档

Comments