Jekyll搭建Github写作环境

通过搭建Jekyll+Github Pages为记录思想、整理笔记和分享知识,并将其中承载的价值传播给他人。

Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过一个转换器(如 Markdown)和我们的 Liquid 渲染器转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。Jekyll 也可以运行在 GitHub Page 上,也就是说,你可以使用 GitHub 的服务来搭建你的项目页面、博客或者网站,而且是完全免费的。

Github Pages 是面向用户、组织和项目开放的公共静态页面搭建托管服 务,站点可以被免费托管在 Github 上,你可以选择使用 Github Pages 默 认提供的域名 github.io 或者自定义域名来发布站点。Github Pages 支持 自动利用 Jekyll 生成站点,也同样支持纯 HTML 文档,将你的 Jekyll 站 点托管在 Github Pages 上是一个不错的选择。

  • 本地搭建Jekyll
  • 创建博客站点
  • 使用Github pages服务生成个人博客

本地搭建Jekyll

本次安装可以Windows下进行。

1. Jekyll介绍

Jekyll是一个静态站点生成器,它会根据网页源码生成静态文件。它提供了模板、变量、插件等功能,可以用来生成整个网站。

Jekyll生成的站点,可以直接发布到github上面,这样我们就有了一个免费的,无限流量的,有人维护的属于我们的自己的web网站。Jekyll是基于Ruby的程序,可以通过gem来下载安装。

Jekyll官方文档:http://jekyllrb.com/

2. 安装Ruby环境

Windows 用户可以直接下载RubyInstaller: http://rubyinstaller.org/downloads/ 安装 ruby 环境

安装Ruby,再安装RubyGems(Ruby2.3版本以上无须安装)

ruby --version
gem update --system

3. 使用gem安装Jekyll环境

建议使用 RubyGems 镜像(https://gems.ruby-china.org/)安装 jekyll。

(1)使用命令,安装jekyll及所有需要的依赖,但不包括插件。

gem install jekyll

安装jekyll的时候需要注意一下安装版本问题。

(2)查看Jekyll是否安装成功

jekyll -v

博客编写、测试

1. 创建博客

切换到博客文件夹下,创建博客:

jekyll new blog  #创建你的站点

这样就会创建一文件夹../blog,其结构如下:

  1. 文件夹_layouts:用于存放模板的文件夹,里面有两个模板,default.html和post.html
  2. 文件夹_posts:用于存放博客文章的文件夹,里面有一篇markdown格式的文章--2016-01-27-welcome-to-jekyll.markdown
  3. 文件夹css:存放博客所用css的文件夹
  4. _coinfig.yml:jekyll的配置文件,里面可以定义相当多的配置参数,具体配置参数可以参照其官网
  5. index.html:项目的首页

2. Jekyll基础目录结构

|-- _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 博客调用的网页模块(比如导航栏、底栏、博文内容显示、评论模块等),一般不需要管;

_config.yml 博客配置文档(包括博客标题、favicon、博主 ID、头像、描述、联系方式等基本信息都在这个文档添加或修改);

index.html 博客架构文档;

_layouts 存放博客调用的页面模板文件(比如博客主页、具体博文页)的文件夹

 css 存放博客系统的页面渲染文档文件夹,主要用于调节诸如标题字体、博文字体大小颜色之类; js 存放博客调用的 JS 文档文件夹

_posts 博客正文存放的文件夹。命名有规定,必须为「日期 + 标题」的模式,即「2015-04-27-Like-Kissing.md」,才能发布到博客里; 

images 图片文件夹,存放博客相关素材,包括博客 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 文件并非必须,但一般架构完整的博客都有。

3. 开启Jekyll服务

本地服务开启后,Jekyll服务默认端口是4000,所以我打开浏览器,输入:http://localhost:4000 即可查看效果

cd blog      #进入blog目录,记得一定要进入创建的目录,否则服务无法开启
jekyll serve     #启动你的http服务 

4. 调试

在博客文件夹下中

jekyll build --trace

将所有文章文件根据其模板进行编译,生成结果,放在根目录下的_site中


使用Github pages服务生成个人博客

1. 创建我们的仓库

repository name设置为username.github.com,选择Public仓库类型!

2. 为仓库创建Github Pages

创建仓库后,选择setting
点击Launch automatic page generator,然后编辑下标题和描述,任意选择一个模板,点击Publish。

如此,可以通过浏览器输入 http://username.github.io访问博客主页。

3. 将本地jekyll代码部署到Github上的仓库

前面已说明如何搭建Jekyll,我们可以在本地开发测试,推送代码到仓库,发布到线上

4. 克隆仓库到本地

请确保本地安装了git客户端,克隆username.github.com仓库到本地。

git clone https://github.com/username/username.github.com.git

此你会看见当前存在username.github.com这个目录,启动jekyll服务

cd username.github.com
jekyll serve -B

打开http://localhost:4000,即可看见本地创建主页效果,理论上和http://username.github.com 访问的应该是一模一样的。

5. 拷贝本地的jekyll目录到版本库

删除username.github.com下面的示例文件:

rm -rf _site index.html params.json  stylesheets

拷贝本地blog下的所有目录及文件到username.github.com

cp -r blog/* username.github.com

重启服务,看见本地jekyll的站点效果

6. 发布

git add --all              #添加到暂存区  
git commit -m "提交jekyll默认页面" #提交到本地仓库
git push origin master         #线上的站点是部署在master下面的

稍等10分钟左右,Github Pages有一定时间缓存,我们刷新username.github.io看看,已经ok了!

参考链接:

  1. jekyllcn

  2. http://lingyu.wang/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335

推荐阅读更多精彩内容