基於Jekyll引擎的博客服務器搭建
Transform your plain text into static websites and blogs.
1. 爲什麼要搭建自己的博客服務器
之前我們已經利用 GitHub Pages 和 Jekyll 搭建了靜態博客並且託管在了 github.io
上,
並且擁有了不錯的頁面效果以及可用性。那我們爲什麼還要搭建自己的博客服務器呢?因爲
GitHub 的服務器在美國,訪問體驗並不順暢;並且在我們 Push了項目之後,往往要等待一
定時間頁面內容纔會刷新。爲了更好的體驗效果,我們將基於樹莓派搭建自己的博客服務器。
樹莓派爲 3B+,系統爲 Archlinuxarm-rpi-2
2. 環境搭建
2.1. 安裝 Ruby
依次運行下面的命令安裝最新的 Ruby 運行環境:
$ sudo pacman -S ruby $ ruby --version ruby 2.4.0p0 (2016-12-24 revision 57164) [armv7l-linux-eabihf] $ gem --version 2.6.8
出現上面的提示說明 Ruby 安裝成功,gem 可以看做是 Ruby 插件的安裝器,一般安裝 Ruby 後自帶。
注意: Archlinux 用普通用戶安裝 Ruby 後會遇到運行 Gem 插件提示找不到命令的情況, 原因是 Ruby 未自動設置環境變量。解決方法:
- bash
打開 ~/.bashrc
文件,加入以下命令: export PATH=$PATH:~/.gem/ruby/2.4.0/bin/
- fish
打開 ~/.config/fish/config.fish
文件(沒有則新建),加入以下命令: shell set -x
PATH {$PATH} ~/.gem/ruby/2.4.0/bin
2.2. 安裝 Jekyll
Jekyll is a simple, blog-aware, static site generator for personal, project, or organization sites. Written in Ruby by Tom Preston-Werner, GitHub's co-founder, it is distributed under an open source license.
- 安裝 Jekyll 之前需要先安裝
bundle
管理器
gem install bundle
- 編輯
Gemfile
,在文件中輸入以下內容
gem 'github-pages', group: :jekyll_plugins
- 利用
bundle
安裝 Jekyll 渲染需要的所有包
bundle install
- 到此需要的依賴安裝完畢,若 fork 的其他人的 Jekyll 模板,則直接進入模板目錄下
執行
bundle install
。
2.3. 運行 Jekll
- 若要在
_site
目錄下生成網站目錄,則運行bundle exec jekyll build
- 若要運行可本機訪問的服務則運行
bundle exec jekyll server -w
,默認本機地址127.0.0.1:4000
- 若要局域網可訪問則需要加上
bundle exec jekyll server -w --host=0.0.0.0