博客诞生记

Talk is cheap. Show me the code.—— 来自于 Linux 创始人 Linus Torvalds

大佬都这么说了,我等当然要响应号召。

在哪写?

本来想,作为一个全干工程师,博客必须要自己手撸才够风骚啊。后来想想,太折腾,等出来菜都凉了——不如干脆“回娘家”——就用github,免费服务器,无限流量,挺好。

那就愉快的开始吧

使用Jekyll(发音/’dʒiːk əl/,”杰克尔”),它是一个静态站点生成器,它会根据网页源码生成静态文件。

我用的是mac,下面的操作都是基于macOS平台的

1. 安装ruby 和 Jekyll

由于 mac 系统自带ruby,所以不用安装ruby,直接开始安装 jekyll:

1
gem install jekyll

愉快地等待安装完成,但是,出错了:

ERROR:  Could not find a valid gem 'jekyll' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert protocol version (https://rubygems.org/latest_specs.4.8.gz)

看来起来像是被墙了,所以需要翻墙或者找一个国内镜像。在网上好一顿找,在试验了很多错误地址,包括淘宝镜像之后,最终发现可用地址 https://gems.ruby-china.com/ 下面开始换掉镜像地址:

1
2
 gem sources --remove https://rubygems.org/
 gem sources -a https://gems.ruby-china.com/

然后开始安装jekyll:

1
 gem install jekyll

我x,终于不报错了,结果,话还没说完就蹦个错误:

1
2
3
Fetching: public_suffix-3.0.2.gem (100%)
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.

没有目录写权限,ok,那就提升到管理员

1
 sudo gem install jekyll

又给我来一错:

1
2
ERROR:  Error installing jekyll:
	public_suffix requires Ruby version >= 2.1.

ruby版本低了, 升级ruby。通过 rvm 管理器升级,先安装rvm,如果已经安装过的话,就不用安装了(可以通过rvm -v查看版本号,如果没有 rvm命令,表示没有安装):

1
curl -L get.rvm.io | bash -s stable

一路安装,生怕出错,还好。安装完成之后,会有提示(可能每个人的路径不一样):

1
To start using RVM you need to run `source /Users/leyunchang/.rvm/scripts/rvm`

那就按照提示来吧:

1
source /Users/leyunchang/.rvm/scripts/rvm

安装完了查看一下版本:

1
rvm -v

看到提示:

1
rvm 1.29.4 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

说明安装成功了,那就安装一个比较高版本的。如果不知道安装哪个版本,可以使用:

1
rvm list known

看一下有哪些版本,本博客发表时最高版本为2.6.0,那就安装2.5.1吧:

1
rvm install 2.5.1

安装的时间有点长,静静的等待。

安装完成之后,就可以愉快的安装jekyll了。

1
sudo gem install jekyll

输入管理员密码,一路畅通的安装了。安装完成最后会有提示

1
2
Done installing documentation for public_suffix, addressable, colorator, http_parser.rb, eventmachine, em-websocket, concurrent-ruby, i18n, rb-fsevent, ffi, rb-inotify, sass-listen, sass, jekyll-sass-converter, ruby_dep, listen, jekyll-watch, kramdown, liquid, mercenary, forwardable-extended, pathutil, rouge, safe_yaml, jekyll after 43 seconds
25 gems installed

2.开始搭建博客

参考了阮一峰老师的文章,说得比较详细,这里就不再详述了。

传送门: 搭建一个免费的,无限流量的Blog—-github Pages和Jekyll入门

重要的是,阮老师的教程是最基础入门教程,生成的博客是没有版式的。那么,我们想弄得好看点该怎么办? 如果你是一个喜欢手撸的人,可以自己写布局和样式;如果是像我一样比较懒的人,可以直接在github上设置主题风格:

1.打开博客仓库,打开“设置”选项卡 打开仓库“设置”选项卡

2.向下拉,找到“github pages”区域,点击“choose a theme” choose a theme

3.会打开一个新页面选择风格 主题风格选择页面

3.通过 jekyll 构建运行

从根本上来讲,安装jekyll并不是必需的。本地写好文章之后可以直接传到github直接运行,但是出错的机率会比较高,可能会导致反复修改。jekyll提供了一套语法标准和一个很好的本地运行环境,可以启动服务器本地预览,效果与传到github一致。

介绍一些基本的使用方法:

构建代码到当前_site文件夹,如果没有_site文件夹会自动创建一个

1
jekyll build

启动本地服务器

1
jekyll server

如果想在文件改变后,自动构建,在后面加上--watch

1
jekyll server --watch

jekyll是一个比较有意思的东西,有兴趣的可以参考jekyll中文文档