在 Linux 上搭建Jekyll靜態博客

CentOS,Ubuntu 按照一樣步驟安裝,Ruby Gems 每每都沒法搭建成,每次都是依賴不對,各類奇葩緣由,解決辦法就是使用 RVM 安裝,解決 Ruby 的環境依賴管理,並且每次安裝Jekyll基本不會出錯linux

本文主要介紹如何用一條靠譜的路子快速安裝 Ruby 環境 搭建Jekyll博客。git

1、Jekyll介紹

jekyll是一個簡單的免費的Blog生成工具,相似WordPress。可是和WordPress又有很大的不一樣,緣由是Jekyll只是一個生成靜態網頁的工具,不須要數據庫支持。可是能夠配合第三方服務,例如Disqus。最關鍵的是jekyll能夠免費部署在Github上,並且能夠綁定本身的域名。github

2、環境準備

CentOS 7.3 / Ubuntu 16.04  
rvm 1.29.3  
gem 2.5.1  
ruby 2.3.0  
jekyll 3.6.2

3、系統需求

首先肯定操做系統環境,不建議在 Windows 上面搞,若是你必定想在Windows上安裝Jekyll數據庫

參考:http://www.ymq.io/2017/07/22/Windows-install-Jekyll/api

  • Mac OS X
  • 任意 Linux 發行版本(Ubuntu,CentOS, Redhat, ArchLinux ...)

強烈新手使用 Ubuntu 省掉沒必要要的麻煩!ruby

4、RVM 安裝

RVM 是幹什麼的這裏就不解釋了,自行Google,這裏全部的命令都是再用戶權限下操做的,任何命令最好都不要用 sudobash

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable

# 若是上面的鏈接失敗,能夠嘗試: 
curl -L https://raw.githubusercontent.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable

期間可能會問你 sudo 管理員密碼,以及自動經過 Homebrew 安裝依賴包,等待一段時間後就能夠成功安裝好 RVM服務器

而後,載入 RVM 環境(新開 Termal 就不用這麼作了,會自動從新載入的)curl

source /usr/local/rvm/scripts/rvm

修改 RVM 的 Ruby 安裝源到 Ruby China 的 Ruby 鏡像服務器,這樣能提升安裝速度ide

echo "ruby_url=https://cache.ruby-china.org/pub/ruby" >> /usr/local/rvm/user/db

檢查一下是否安裝正確

$ rvm -v

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

5、安裝 Ruby

用 RVM 安裝 Ruby 環境

$ rvm requirements
$ rvm install 2.3.0

等待漫長的下載,編譯過程,完成之後,Ruby, Ruby Gems 就安裝好了,國內速度很慢,國外服務器,不到一分鐘就下載完了,文件大概100兆

設置 Ruby 版本,一樣,也能夠用其餘版本號,前提是你有用 rvm install 安裝過那個版本

rvm use 2.3.0 --default

這個時候你能夠測試是否正確

$ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]

$gem -v
2.5.1

6、安裝 Bundler

gem install bundler

7、搭建 Jekyll

搭建Jekyll博客,須要找一套主題模板,這裏能夠參考:https://www.zhihu.com/question/20223939 ,如下以 mzlogin.github.io 的主題爲例

一、安裝 Git

CentOS

yum install git

Ubuntu

apt install git

二、克隆主題

git clone https://github.com/mzlogin/mzlogin.github.io.git

三、安裝 Jekyll

cd souyunku.github.io/
bundle install

四、啓動 jekyll

jekyll serve -H 0.0.0.0 -P 80

效果以下
訪問服務

五、報錯解決

Ubuntu 16.04

## Configuration file: /root/mzlogin.github.io/_config.yml
  Dependency Error: Yikes! It looks like you don't have jekyll-remote-theme or one of its dependencies installed. In order to use Jekyll as currently configured, you'll need to install this gem. The full error message from Ruby is: 'Could not open library 'libcurl': libcurl: cannot open shared object file: No such file or directory. Could not open library 'libcurl.so': libcurl.so: cannot open shared object file: No such file or directory. Could not open library 'libcurl.so.4': libcurl.so.4: cannot open shared object file: No such file or directory' If you run into trouble, you can find helpful resources at https://jekyllrb.com/help/! 
jekyll 3.6.2 | Error:  jekyll-remote-theme

執行

apt-get install libcurl3

8、jekyll 文檔

jekyll 基本用法 官方中文文檔

9、博客使用指南

博客搭建成功以後,還須要作一些事情才能讓你的頁面「正確」跑起來。

如下內容摘自 碼志 博客主題的,Fork 指南

  1. 正確設置項目名稱與分支。

    按照 GitHub Pages 的規定,名稱爲 username.github.io 的項目的 master 分支,或者其它名稱的項目的 gh-pages 分支能夠自動生成 GitHub Pages 頁面。

  2. 修改域名。

    若是你須要綁定本身的域名,那麼修改 CNAME 文件的內容;若是不須要綁定本身的域名,那麼刪掉 CNAME 文件。

  3. 修改配置。

    網站的配置基本都集中在 _config.yml 文件中,將其中與我的信息相關的部分替換成你本身的,好比網站的 url、title、subtitle 和第三方評論模塊的配置等。

    評論模塊: 目前支持 disqus、gitment 和 gitalk,選用其中一種就能夠了,推薦使用 gitalk。它們各自的配置指南連接在 _config.yml 文件的 Comments 一節裏都貼出來了。

    注意: 若是使用 disqus,由於 disqus 處理用戶名與域名白名單的策略存在缺陷,請必定將 disqus.username 修改爲你本身的,不然請將該字段留空。我對該缺陷的記錄見 Issues#2。

  4. 刪除個人文章與圖片。

    以下文件夾中除了 template.md 文件外,均可以所有刪除,而後添加你本身的內容。

    • _posts 文件夾中是我已發佈的博客文章。
    • _drafts 文件夾中是我還沒有發佈的博客文章。
    • _wiki 文件夾中是我已發佈的 wiki 頁面。
    • images 文件夾中是個人文章和頁面裏使用的圖片。
  5. 修改「關於」頁面。

    pages/about.md 文件內容對應網站的「關於」頁面,裏面的內容多爲我的相關,將它們替換成你本身的信息,包括 _data 目錄下的 skills.yml 和 social.yml 文件裏的數據。

貼心提示

  1. 排版建議遵守必定的規範,推薦 中文文案排版指北(簡體中文版)
  2. 在本地預覽博客效果能夠參考 Setting up your Pages site locally with Jekyll。

經驗與思考

  • 簡約,儘可能每一個頁面都不展現多餘的內容。
  • 有時一圖抵千言,有時可能只會拖慢網頁加載速度。
  • 言之有物,不作無痛之呻吟。
  • 若是寫技術文章,那先將技術原理徹底理清了再開始寫,一邊摸索技術一邊組織文章效率較低。
  • 杜絕難斷句、難理解的長句子,若是不能將其拆分紅幾個簡潔的短句,說明腦中的理解並不清晰。
  • 能夠學習一下那些高質量的博主,他們的行文,內容組織方式,有什麼值得借鑑的地方。

致謝做者

個人我的博客外觀基於 DONGChuan 的修改,感謝 Zhuang Ma !

Contact

  • 做者:鵬磊
  • 出處:http://www.ymq.io
  • Email:admin@souyunku.com
  • 版權歸做者全部,轉載請註明出處
  • Wechat:關注公衆號,搜雲庫,專一於開發技術的研究與知識分享

關注公衆號-搜雲庫

相關文章
相關標籤/搜索