在CentOS,Ubuntu
按照同樣步驟安裝,Ruby Gems
往往都無法搭建成,每次都是依賴不對,各種奇葩原因,解決辦法就是使用 RVM
安裝,解決 Ruby
的環境依賴管理,而且每次安裝Jekyll
基本不會出錯
本文主要介紹如何用一條靠譜的路子快速安裝 Ruby
環境 搭建Jekyll
部落格。
一、Jekyll介紹
jekyll
是一個簡單的免費的Blog
生成工具,類似WordPress
。但是和WordPress
又有很大的不同,原因是Jekyll
只是一個生成靜態網頁的工具,不需要資料庫支援。但是可以配合第三方服務,例如Disqus
。最關鍵的是jekyll可以免費部署在Github上,而且可以繫結自己的域名。
二、環境準備
CentOS 7.3 / Ubuntu 16.04
rvm 1.29.3
gem 2.5.1
ruby 2.3.0
jekyll 3.6.2
複製程式碼
三、系統需求
首先確定作業系統環境,不建議在 Windows 上面搞,如果你一定想在Windows
上安裝Jekyll
- Mac OS X
- 任意 Linux 發行版本(Ubuntu,CentOS, Redhat, ArchLinux ...)
強烈新手使用 Ubuntu 省掉不必要的麻煩!
四、RVM 安裝
RVM 是幹什麼的這裡就不解釋了,自行Google,這裡所有的命令都是再使用者許可權下操作的,任何命令最好都不要用 sudo
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
就不用這麼做了,會自動重新載入的)
source /usr/local/rvm/scripts/rvm
複製程式碼
修改 RVM 的 Ruby 安裝源到 Ruby China 的 Ruby 映象伺服器,這樣能提高安裝速度
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]
複製程式碼
五、安裝 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
複製程式碼
六、安裝 Bundler
gem install bundler
複製程式碼
七、搭建 Jekyll
搭建Jekyll部落格,需要找一套主題模板,這裡可以參考:www.zhihu.com/question/20… ,以下以 mzlogin.github.io 的主題為例
1、安裝 Git
CentOS
yum install git
複製程式碼
Ubuntu
apt install git
複製程式碼
2、克隆主題
git clone https://github.com/mzlogin/mzlogin.github.io.git
複製程式碼
3、安裝 Jekyll
cd souyunku.github.io/
bundle install
複製程式碼
4、啟動 jekyll
jekyll serve -H 0.0.0.0 -P 80
複製程式碼
效果如下
5、報錯解決
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
複製程式碼
八、jekyll 文件
九、部落格使用指南
部落格搭建成功之後,還需要做一些事情才能讓你的頁面「正確」跑起來。
以下內容摘自 碼志 部落格主題的,Fork 指南
-
正確設定專案名稱與分支。
按照 GitHub Pages 的規定,名稱為
username.github.io
的專案的 master 分支,或者其它名稱的專案的 gh-pages 分支可以自動生成 GitHub Pages 頁面。 -
修改域名。
如果你需要繫結自己的域名,那麼修改 CNAME 檔案的內容;如果不需要繫結自己的域名,那麼刪掉 CNAME 檔案。
-
修改配置。
網站的配置基本都集中在 _config.yml 檔案中,將其中與個人資訊相關的部分替換成你自己的,比如網站的 url、title、subtitle 和第三方評論模組的配置等。
評論模組: 目前支援 disqus、gitment 和 gitalk,選用其中一種就可以了,推薦使用 gitalk。它們各自的配置指南連結在 _config.yml 檔案的 Comments 一節裡都貼出來了。
注意: 如果使用 disqus,因為 disqus 處理使用者名稱與域名白名單的策略存在缺陷,請一定將 disqus.username 修改成你自己的,否則請將該欄位留空。我對該缺陷的記錄見 [Issues#2][3]。
-
刪除我的文章與圖片。
如下資料夾中除了 template.md 檔案外,都可以全部刪除,然後新增你自己的內容。
- _posts 資料夾中是我已釋出的部落格文章。
- _drafts 資料夾中是我尚未釋出的部落格文章。
- _wiki 資料夾中是我已釋出的 wiki 頁面。
- images 資料夾中是我的文章和頁面裡使用的圖片。
-
修改「關於」頁面。
pages/about.md 檔案內容對應網站的「關於」頁面,裡面的內容多為個人相關,將它們替換成你自己的資訊,包括 _data 目錄下的 skills.yml 和 social.yml 檔案裡的資料。
貼心提示
-
排版建議遵照一定的規範,推薦 中文文案排版指北(簡體中文版)。
-
在本地預覽部落格效果可以參考 [Setting up your Pages site locally with Jekyll][2]。
經驗與思考
-
簡約,儘量每個頁面都不展示多餘的內容。
-
有時一圖抵千言,有時可能只會拖慢網頁載入速度。
-
言之有物,不做無痛之呻吟。
-
如果寫技術文章,那先將技術原理完全理清了再開始寫,一邊摸索技術一邊組織文章效率較低。
-
杜絕難斷句、難理解的長句子,如果不能將其拆分成幾個簡潔的短句,說明腦中的理解並不清晰。
-
可以學習一下那些高質量的博主,他們的行文,內容組織方式,有什麼值得借鑑的地方。
致謝作者
我的個人部落格外觀基於 DONGChuan 的修改,感謝 Zhuang Ma !
Contact
- 作者:鵬磊
- 出處:www.ymq.io
- Email:admin@souyunku.com
- 版權歸作者所有,轉載請註明出處
- Wechat:關注公眾號,搜雲庫,專注於開發技術的研究與知識分享