前言
一直就想搭建一個屬于自己的博客網站,但是一直拖著沒有執行,在一次偶然的機會看到了鴻洋大神的 如何利用github打造博客專屬域名,就心血來潮,馬上自己動手做了一個,耗時了近一個星期,終于差不多完成了,特意記錄下來,供他人參考。
關于Jekyll
Jekyll 是一個免費的生成靜態網頁的工具,不需要數據庫支持。它有一個模版目錄,其中包含原始文本格式的文檔,通過 Markdown (或者 Textile) 以及 Liquid 轉化成一個完整的可發布的靜態網站,可以配合第三方服務例如: Disqus(評論)、多說(評論) 以及分享 等等擴展功能,Jekyll 可以直接部署在 Github(國外) 或 Coding(國內) 上,可以綁定自己的域名。Jekyll中文文檔、Jekyll英文文檔、Jekyll主題列表。
關于GitHub Pages
官方說法是Websites for you and your projects.GitHub Pages是一個免費的靜態網站托管平臺,由github提供,它具有以下特點:
- GitHub Pages 有 300M 免費空間,資料自己管理,保存可靠;
- 學著用 GitHub,享受 GitHub 的便利,上面有很多大牛,眼界會開闊很多;
- 順便看看 GitHub 工作原理,最好的團隊協作流程;
- GitHub 是趨勢;
- 可以自定義域名
本地環境搭建
如果你只是想使用本主題,而不想搭建本地環境,那么可以直接跳過這部分,不搭建本地環境則不能實現本地預覽,以下安裝操作都是在Windows系統環境下進行。(安裝有點煩,會出現你意想不到的錯誤,祝你好運!)
安裝Ruby
jekyll本身基于Ruby開發,因此,想要在本地構建一個測試環境需要具有Ruby的開發和運行環境。在windows下,可以使用Rubyinstaller安裝,ruby安裝官方說明,Windows下只需要保持默認狀態一路下一步就可以了。
安裝RubyDevKit
從這里下載DevKit,注意版本要與Ruby版本一致。
下載下來的是一個sfx格式的文件,如果你安裝有7-zip,可以直接雙擊,它會自解壓到你所選擇的目錄。
解壓完成之后,用cmd進入到剛才解壓的目錄下,運行下面命令,該命令會生成config.yml。
$ ruby dk.rb init
config.yml
文件實際上是檢測系統安裝的ruby的位置并記錄在這個文件中,以便稍后使用。但上面的命令只針對使用rubyinstall安裝的ruby有效,如果是其他方式安裝的話,需要手動修改config.yml
。
最后,執行如下命令,執行安裝:
$ ruby setup.rb
如果沒有setup.rb的話,執行:
$ ruby dk.rb install
安裝Git
創建本地倉庫myblog
$ git init myblog
安裝Bundler
建議使用Bundler來安裝和運行Jekyll。
直接使用下面命令即可:
$ gem install bundler
然后在上面的myblog目錄創建一個叫Gemfile的文件,注意沒有后綴,輸入
source 'https://ruby.taobao.org/'
gem 'github-pages', group: :jekyll_plugins
保存后,在命令行中執行
$ bundle install
命令會根據當前目錄下的Gemfile,安裝所需要的所有軟件。這一步所安裝的東西,可以說跟github本身的環境是完全一致的,所以可以確保本地如果沒有錯誤,上傳后也不會有錯誤。而且可以在將來使用下面命令,隨時更新環境,十分方便
$ bundle update
使用下面命令,啟動轉化和本地服務:
$ bundle exec jekyll serve
在瀏覽器里輸入: http://localhost:4000,就可以看到你的博客效果了。
so easy !(PS:說起來都是淚啊,國內的網絡你懂得,下載安裝有點慢請耐心等待,或者使用淘寶源)
目錄結構
Jekyll 的核心其實是一個文本轉換引擎。它的概念其實就是: 你用你最喜歡的標記語言來寫文章,可以是 Markdown,也可以是 Textile,或者就是簡單的 HTML, 然后 Jekyll 就會幫你套入一個或一系列的布局中。在整個過程中你可以設置URL路徑, 你的文本在布局中的顯示樣式等等。這些都可以通過純文本編輯來實現,最終生成的靜態頁面就是你的成品了。
一個基本的 Jekyll 網站的目錄結構一般是像這樣的:
.
├── _config.yml
├── _includes
| ├── footer.html
| └── header.html
├── _layouts
| ├── default.html
| ├── post.html
| └── page.html
├── _posts
| └── 2017-08-01-welcome-to-jekyll.markdown
├── _sass
| ├── _base.scss
| ├── _layout.scss
| └── _syntax-highlighting.scss
├── about.md
├── css
| └── main.scss
├── feed.xml
└── index.html
這些目錄結構以及具體的作用可以參考 官網文檔
進入 _config.yml 里面,修改成你想看到的信息,重新 jekyll server ,刷新瀏覽器就可以看到你剛剛修改的信息了。
到此,博客初步搭建算是完成了,
部署到服務器
我這里講的是部署到 Github Page 創建一個 github 賬號,然后創建一個跟你賬戶名一樣的倉庫,如我的 github 賬戶名叫skylarklxlong ,我的 github 倉庫名就叫 skylarklxlong.github.io,創建好了之后,把剛才建立的 myblog 項目 push 到 username.github.io倉庫里去(username指的是你的github用戶名),檢查你遠端倉庫已經跟你本地 myBlog 同步了,然后你在瀏覽器里輸入 username.github.io ,就可以訪問你的博客了。
編寫文章
所有的文章都是 _posts 目錄下面,文章格式為 mardown 格式,文章文件名可以是 .mardown 或者 .md。
編寫一篇新文章很簡單,你可以直接從 _posts/ 目錄下復制一份出來 2017-08-01-welcome-to-myblog.md
,修改名字為 2017-08-01-article1.markdown ,注意:文章名的格式前面必須為 2017-08-01- ,日期可以修改,但必須為 年-月-日- 格式,后面的 article1 是整個文章的連接 URL,如果文章名為中文,那么文章的連接URL就會變成這樣的:%E6%90%AD%E5, 所以建議文章名最好是英文的或者阿拉伯數字。 雙擊 2017-08-01-article1.markdown 打開
---
layout: post
title: 歡迎來到我的博客
date: 2017-08-01
tags: Jekyll
---
正文...
title: 顯示的文章名, 如:title: 我的第一篇文章
date: 顯示的文章發布日期,如:date: 2016-10-16
tags: tag標簽的分類,如:tags: 隨筆
注意:文章頭部格式必須為上面的,.... 就是文章的正文內容。
我寫文章使用的是 MarkdownPad2 編輯器,如果你對 markdown 語法不熟悉的話,可以在網上查找寫資料,后續我也會寫關于如何使用markdown的相關文章。
使用我的模版
雖然博客部署完成了,你會發現博客太簡單不是你想要的,如果你喜歡我的模板的話,可以使用我的模板。
首先你要獲取的我博客,Github項目地址,你可以直接點擊下載博客,進去skylarklxlong.github.io/ 目錄下, 使用命令部署本地服務
$ jekyll server
就可以看到的博客樣式了。
修改成你自己的博客
- 如果你想使用我的模板請把 _posts/ 目錄下的文章都去掉。
- 修改 _config.yml 文件里面的內容為你自己的。
然后使用 git push 到你自己的倉庫里面去,檢查你遠端倉庫,在瀏覽器輸入 username.github.io 就會發現,你有一個漂亮的主題模板了。
寫在最后
剛開始寫博客不久(是真的剛開始),難免會出現一些語法及其他錯誤,還請各位多多包含。
如果你在搭建博客遇到問題,可以在我的聯系方式中給我提問。
后面會繼續介紹,如何綁定你自己的固定域名,歡迎繼續關注我博客的更新。