6

Windows安装Jekll

一直想弄个自己的个人博客,于是研究了一下Github Pages。发现很多人都推荐使用Jekyll这个工具来生成静态页面的博客。踩了点坑,在这里记录下来。

我的环境及相关软件版本:

win10 x64
Ruby 2.4.1-2 (x64)
Jekyll 3.5.0

在本文中,我的最终目标是安装Jekyll,Jekyll需要Ruby环境,于是就要先安装Ruby。

我安装的是版本2.4,在Windows系统安装Ruby是通过RubyInstaller来安装的。
看官网2.4版本与之前2.3的版本的安装是有点差异的:

  • 2.3版本的需要下载RubyInstaller和DevKit-mingw64
  • 2.4版本之后,需要安装RubyInstaller和MSYS2 toolkit

请看原文

WHICH DEVELOPMENT KIT?

Down this page, several and different versions of Development Kits (DevKit) are listed. Please download the right one for your version of Ruby:

  • Ruby 2.4.0 and newer: The MSYS2 DevKit is downloaded as the last step of the installation.(意思是安装RubyInstaller后会提示安装MSYS2,无需像2.3那样另外下载mingw64来安装)
  • Ruby 2.0.0 to 2.3.x (32bits): mingw64-32-4.7.2
  • Ruby 2.0.0 to 2.3.x (64bits): mingw64-64-4.7.2

The RubyInstaller Development Kit (DevKit) is a MSYS/MinGW based toolkit than enables you to build many of the native C/C++ extensions available for Ruby. Starting with Ruby 2.4.0 > it is replaced by the MSYS2 toolkit.

1. 安装RubyInstaller及MSYS2

下载RubyInstaller打开安装,安装最后会弹出一个cmd窗口,就是用来安装MSYS2的,选择3

MSYS2安装1

MSYS2安装过程比较顺利,但是还没完,看MSYS2官网,安装后还需要升级一下核心的包。请看官网的安装指南,写的很清楚,也有截图。浏览不到请自行搭梯。

2. 升级MSYS2的核心包

在MSYS2的界面输入升级核心包的命令:pacman -Syu,升级过程可能由于网速不稳定不断报错,自行搭梯,多试几次。

如果还有其它问题,官网说可以关闭在重新打开MSYS2,运行命令pacman -Su

升级过程相关截图如下:

MSYS2升级

MSYS2升级报错

我在自己机器安装了很久,打了一盘王者荣耀才安装好。如果升级成功了,就可以进行下一步:安装Jekyll

3. 安装Jekll

打开命令行,检查一下ruby和ruby的包管理器gem(类似与node.js的npm)的安装:

C:\Users\choi>ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x64-mingw32]

C:\Users\choi>gem -v
2.6.11

设置一下使用国内的镜像:
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/

如果安装过程提示连接不了,试试换成http的镜像地址:
`gem sources --add http://gems.ruby-china.org/ https://gems.ruby-china.org/

查看gem当前设置的镜像:gem sources -l

使用gem安装Jekyll:gem install jekyll

安装很快会完成,接下来需要测试一下Jekyll了。

4. Jekll的HelloWorld

命令号随便导航到一个目录,运行命令jekyll new my-blog创建一个默认的博客目录,但是会报错,说少了一个bundler,解决也很简单,用gem安装即可:gem install bundler。如下图:

图片描述

安装后再次运行jekyll new my-blog即可成功创建默认的博客了。

cd my-blog进入目录,运行jekyll serve开启一个本地的服务端。

但是好事多磨,又报错,还有一个警告:
图片描述

对于Deprecation: The 'gems' configuration option has been renamed to 'plugins'. Please update your config file accordingly.这个警告,解决办法是打开_config.ymlgems:改成plugins:

对于jekyll 3.5.0 | Error: Permission denied - bind(2) for 127.0.0.1:4000这个报错,解决办法是打开_config.yml,在最后加入配置来修改端口port:4001

最后,终于成功了。如下图:
图片描述
图片描述

5. 发布到GitHub Pages

GitHub Pages是支持并推荐使用Jekyll的,这也是我为什么弄GitHub Pages前先弄Jekyll的原因。现在弄好了,可以把这个my-blog发布上去。

首先需要注册一个github帐号,例如我的帐号是CaiBaoHong,然后就需要在github上创建一个CaiBaoHong.github.io的仓库。注意,必须是跟帐号同名的。然后把my-blog目录下所有文件提交到这个仓库,然后就可以访问https://caibaohong.github.io(点击进去仓库,在settings那里可以看到访问的url)

图片描述

到这里为止,我就把坑踩了一遍,走通了Jekyll创建GitHub Pages的流程啦。
接下来需要研究的还有:如何使用Jekyll这个工具来编辑博客文章,如何使用别人现成的Jekyll模板等等。


煲煲菜
1.5k 声望155 粉丝

世上本没有bug,坑的人多了,也便成了bug


引用和评论

0 条评论