通過搭建Jekyll+Github Pages為記錄思想曙旭、整理筆記和分享知識荡碾,并將其中承載的價值傳播給他人。
Jekyll 是一個簡單的博客形態(tài)的靜態(tài)站點生產(chǎn)機器雏搂。它有一個模版目錄,其中包含原始文本格式的文檔寇损,通過一個轉(zhuǎn)換器(如 Markdown)和我們的 Liquid 渲染器轉(zhuǎn)化成一個完整的可發(fā)布的靜態(tài)網(wǎng)站凸郑,你可以發(fā)布在任何你喜愛的服務(wù)器上。Jekyll 也可以運行在 GitHub Page 上矛市,也就是說芙沥,你可以使用 GitHub 的服務(wù)來搭建你的項目頁面、博客或者網(wǎng)站浊吏,而且是完全免費的而昨。
Github Pages 是面向用戶、組織和項目開放的公共靜態(tài)頁面搭建托管服 務(wù)找田,站點可以被免費托管在 Github 上歌憨,你可以選擇使用 Github Pages 默 認提供的域名 github.io 或者自定義域名來發(fā)布站點。Github Pages 支持 自動利用 Jekyll 生成站點午阵,也同樣支持純 HTML 文檔躺孝,將你的 Jekyll 站 點托管在 Github Pages 上是一個不錯的選擇。
- 本地搭建Jekyll
- 創(chuàng)建博客站點
- 使用Github pages服務(wù)生成個人博客
本地搭建Jekyll
本次安裝可以Windows下進行底桂。
1. Jekyll介紹
Jekyll是一個靜態(tài)站點生成器植袍,它會根據(jù)網(wǎng)頁源碼生成靜態(tài)文件。它提供了模板籽懦、變量于个、插件等功能,可以用來生成整個網(wǎng)站暮顺。
Jekyll生成的站點厅篓,可以直接發(fā)布到github上面秀存,這樣我們就有了一個免費的,無限流量的羽氮,有人維護的屬于我們的自己的web網(wǎng)站或链。Jekyll是基于Ruby的程序,可以通過gem來下載安裝档押。
Jekyll官方文檔:http://jekyllrb.com/
2. 安裝Ruby環(huán)境
Windows 用戶可以直接下載RubyInstaller: http://rubyinstaller.org/downloads/ 安裝 ruby 環(huán)境
安裝Ruby澳盐,再安裝RubyGems(Ruby2.3版本以上無須安裝)
ruby --version
gem update --system
3. 使用gem安裝Jekyll環(huán)境
建議使用 RubyGems 鏡像(https://gems.ruby-china.org/)安裝 jekyll。
(1)使用命令令宿,安裝jekyll及所有需要的依賴叼耙,但不包括插件。
gem install jekyll
安裝jekyll的時候需要注意一下安裝版本問題粒没。
(2)查看Jekyll是否安裝成功
jekyll -v
博客編寫筛婉、測試
1. 創(chuàng)建博客
切換到博客文件夾下,創(chuàng)建博客:
jekyll new blog #創(chuàng)建你的站點
這樣就會創(chuàng)建一文件夾../blog癞松,其結(jié)構(gòu)如下:
- 文件夾_layouts:用于存放模板的文件夾爽撒,里面有兩個模板,default.html和post.html
- 文件夾_posts:用于存放博客文章的文件夾拦惋,里面有一篇markdown格式的文章--2016-01-27-welcome-to-jekyll.markdown
- 文件夾css:存放博客所用css的文件夾
- _coinfig.yml:jekyll的配置文件匆浙,里面可以定義相當多的配置參數(shù),具體配置參數(shù)可以參照其官網(wǎng)
- index.html:項目的首頁
2. Jekyll基礎(chǔ)目錄結(jié)構(gòu)
|-- _config.yml
|-- index.html
|-- _includes
|-- _layouts
| |-- default.html
| `-- post.html
|-- css
|-- js
|-- _posts
| `-- 2015-04-27-Like-Kissing.md
|-- images
| `-- Leah.png
|-- CNAME
|-- _404.html
|-- About.md
|—— feed.xml
`-- README.md
目錄文檔詳細說明厕妖。如下:
_includes 博客調(diào)用的網(wǎng)頁模塊(比如導(dǎo)航欄首尼、底欄、博文內(nèi)容顯示言秸、評論模塊等)软能,一般不需要管; _config.yml 博客配置文檔(包括博客標題举畸、favicon查排、博主 ID、頭像抄沮、描述跋核、聯(lián)系方式等基本信息都在這個文檔添加或修改); index.html 博客架構(gòu)文檔叛买; _layouts 存放博客調(diào)用的頁面模板文件(比如博客主頁砂代、具體博文頁)的文件夾 css 存放博客系統(tǒng)的頁面渲染文檔文件夾,主要用于調(diào)節(jié)諸如標題字體率挣、博文字體大小顏色之類刻伊; js 存放博客調(diào)用的 JS 文檔文件夾 _posts 博客正文存放的文件夾。命名有規(guī)定,必須為「日期 + 標題」的模式捶箱,即「2015-04-27-Like-Kissing.md」智什,才能發(fā)布到博客里; images 圖片文件夾丁屎,存放博客相關(guān)素材荠锭,包括博客 favicon、博主頭像等圖片及博文貼圖素材晨川; CNAME 用于綁定個人域名的文檔节沦; 404.html 「404 Not Found.」站點鏈接無法訪問時的提示頁面。 About.html 博客中的個人說明文檔(About Me)础爬,以 html、md 格式為主吼鳞; feed.xml 博客的 RSS 訂閱看蚜; README.md 項目說明文檔。用于 Github 個人項目主頁的說明(描述)赔桌。
除此之外供炎,還有諸如 fonts 文件夾,存放博客用的字體文件疾党,或有主題是將 css/js/fonts/images 等文件夾合并到 _assets 為名的主文件夾中音诫。404.html/feed.xml/CNAME 文件并非必須,但一般架構(gòu)完整的博客都有雪位。
3. 開啟Jekyll服務(wù)
本地服務(wù)開啟后竭钝,Jekyll服務(wù)默認端口是4000,所以我打開瀏覽器雹洗,輸入:http://localhost:4000 即可查看效果
cd blog #進入blog目錄,記得一定要進入創(chuàng)建的目錄香罐,否則服務(wù)無法開啟
jekyll serve #啟動你的http服務(wù)
4. 調(diào)試
在博客文件夾下中
jekyll build --trace
將所有文章文件根據(jù)其模板進行編譯,生成結(jié)果时肿,放在根目錄下的_site中
使用Github pages服務(wù)生成個人博客
1. 創(chuàng)建我們的倉庫
repository name設(shè)置為username.github.com庇茫,選擇Public倉庫類型!
2. 為倉庫創(chuàng)建Github Pages
創(chuàng)建倉庫后螃成,選擇setting
點擊Launch automatic page generator旦签,然后編輯下標題和描述,任意選擇一個模板寸宏,點擊Publish宁炫。
如此,可以通過瀏覽器輸入 http://username.github.io訪問博客主頁击吱。
3. 將本地jekyll代碼部署到Github上的倉庫
前面已說明如何搭建Jekyll淋淀,我們可以在本地開發(fā)測試,推送代碼到倉庫,發(fā)布到線上
4. 克隆倉庫到本地
請確保本地安裝了git客戶端朵纷,克隆username.github.com倉庫到本地炭臭。
git clone https://github.com/username/username.github.com.git
此你會看見當前存在username.github.com這個目錄,啟動jekyll服務(wù)
cd username.github.com
jekyll serve -B
打開http://localhost:4000,即可看見本地創(chuàng)建主頁效果袍辞,理論上和http://username.github.com 訪問的應(yīng)該是一模一樣的鞋仍。
5. 拷貝本地的jekyll目錄到版本庫
刪除username.github.com下面的示例文件:
rm -rf _site index.html params.json stylesheets
拷貝本地blog下的所有目錄及文件到username.github.com
cp -r blog/* username.github.com
重啟服務(wù),看見本地jekyll的站點效果
6. 發(fā)布
git add --all #添加到暫存區(qū)
git commit -m "提交jekyll默認頁面" #提交到本地倉庫
git push origin master #線上的站點是部署在master下面的
稍等10分鐘左右搅吁,Github Pages有一定時間緩存,我們刷新username.github.io看看,已經(jīng)ok了威创!