文章
Post
Cancel

创建我的博客

创建我的博客

为什么创建博客

别人都有个博客,记录一些内容,我也想记录一下我的东西。

为什么选择 Jekyll

一个 朋友 用的这个,并且 Github 只支持这个动态框架,这样就不需要打包后再提交到 Github,直接推送编辑好的 Markdown 文件就行了。

为什么选择 Chirpy

那个朋友用的 vno-jekyll,但是那个主题是旧的 Jekyll,我在本地跑的时候好多问题,然后我通过 vno-jekyll 的作者找到了这个主题,跟那个风格很像,所以就下载了这个源代码,在本地跑起来还不错。

怎么创建的

有洁癖的人什么都要处理一下……

为了能避免上传到 Github 出现问题,我在本地通过 Docker 部署了一套环境。

Docker 容器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# 使用 centos:7 镜像创建容器
docker run --privileged -itd --name blog -h blog -v ~/blog:/blog -p 38322:38322   centos:7 /usr/sbin/init

# 进入容器 
docker exec -it blog bash

# 因为要使用高于 2.5.0 版本的 ruby,但 yum 的是 2.0.0 版本,所以要使用 rvm 安装高版本。
# [rvm](http://rvm.io/) 经测试,不要求先安装低版本 ruby
# rvm 安装要用到 which 但是默认 centos 7 镜像不带,所以先安装
yum install which

# 还依赖一堆 (2021年10月22日)
yum install -y patch autoconf automake bison bzip2 gcc-c++ libffi-devel libtool make patch readline-devel ruby sqlite-devel zlib-devel glibc-headers glibc-devel openssl-devel

# 安装完清理 yum 缓存 
yum clean all

#---#
# 切换到非 root 用户
#---#

# !下边这句可以先跳过
# 安装 GPG keys,官网也提供了相应的命令,但是我用了好像没生效,再运行下一句时提醒了用这句
# 验证服务器好像出问题了 参考 https://github.com/rvm/rvm/issues/5096 (日期)
gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

# 安装 rvm,你也可以先运行这句,确认一下上边那个 key 是否变化,我没深入研究
\curl -sSL https://get.rvm.io | bash -s stable

# 根据提示,应用 /etc/profile.d/rvm.sh
source /etc/profile.d/rvm.sh

# 查看可安装版本
rvm list known

# 安装 2.7.0 版本 可简写 rvm install 2.7,linux 里 [] 中间的东西都是可以不写的
rvm install ruby-2.7.0

# 查看 ruby 版本
ruby -v

# 配置 gem 国内镜像
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

# 安装工具
gem install bundler

# 可根据需要安装 git 等。

# 配置 bundle 国内镜像
bundle config mirror.https://rubygems.org https://gems.ruby-china.com

使用主题

下载最新版本代码,我有洁癖,通过 Github 下载的 zip 包。解压后放到容器内 blog 文件夹。然后根据 指引 使用脚本 bash tools/init.sh --no-gh 初始化。然后通过 bundle install 安装项目依赖。最后通过 bundle exec jekyll s 它就在本地 4000 端口跑起来了。

插件

github pages 仅支持以下插件,所以本博客的 分类、标签 不可用

  • jekyll-coffeescript
  • jekyll-default-layout
  • jekyll-gist
  • jekyll-github-metadata
  • jekyll-optional-front-matter
  • jekyll-paginate
  • jekyll-readme-index
  • jekyll-titles-from-headings
  • jekyll-relative-links

不过看到 有人 的能实现,大概看了一下,还没做。

后续

做了一些“汉化”,就是简单的将一些英文换为中文而已……

计划

  • 更完整的汉化
  • 滚动条的美化
  • 朋友博客的自动换肤功能的移植
  • 更多……
This post is licensed under CC BY 4.0 by the author.
大纲