配置环境

简介

jekyll是一个简单的免费的,生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如Disqus。最关键的是jekyll可以免费部署在Github上,而且可以绑定自己的域名。jekyll让我们专注于文章本身,而不是html。

提示:【配置环境】主要是为了在本地开发调试,比如当你使用别人的主题并做出了修改,可以立即在本地看到改变后的结果,当你发表博文时也可

以先在本地预览。但【配置环境】并不是必须的,因为Github Pages与jekyll深度结合,你可以将修改后的结果直接push到

username.github.io仓库,然后访问https://username.github.io,也可以看到你刚才修改过的结果,只是这样没有先本地预览,再push到

github快捷。对于新手来说配置环境会遇到很多问题,所以如果你遇到问题而又解决不了,不妨跳过配置环境的步骤,直接将修改push到github,

然后继续修改,继续push,直到自己满意为止,等你了解到一定程度再回过头配置环境,会更容易的解决问题,因为有很多人不是被编程本身难倒,

而是配置环境时过不去,毕竟万事开头难。

安装Ruby开发环境和jekyll

jekyll是由Ruby脚本语言编写的,所以在运行jekyll之前,需要先安装Ruby运行环境。

  • 然后运行ridk install以添加必需的开发工具
  • 打开cmd命令窗口,执行gem install jekyll bundler安装jekyll和bundler
  • 查看是否正确安装了jekyll:jekyll -v

这里有一个jekyll官方提供的Windows安装jekyll的过程,可供参考

生成本地站点并运行

  • 切换到某个目录:在cmd命令行窗口中,用cd命令切换到一个目录,比如我切换到桌面(Logan是我的用户名)

  • 使用默认模板新建项目:使用jekyll new 项目名命令创建一个项目,比如我创建了一个名为blog的项目,创建好后是一个文件夹,位置在桌面

​ 这是文件夹里的内容

  • 生成静态站点:cd blog切换到blog目录下,运行jekyll serve生成静态站点,此时可能会报错,错误类型为Bundler::GemNotFound,比如我这里遇到的错误如下:

根据提示,错误是缺少名为tzinfo的gem导致的(如果是缺少其他gem,解决方法是一样的,把gem名字换一下就行),使用gem list查看是否下载了此gem,如果查询结果里没有此gem,使用gem install tzinfo安装此gem

安装成功后在此执行jekyll serve,我这里继续报错了,错误提示和上面的相同,打开blog目录下Gemfile文件

这里的意思是,我们创建的blog项目需要依赖名为tzinfo的gem,且版本>=1.2,<2.0(~>的意义请看这里),而我们刚刚安装的版本为2.0版本,所以将Gemfile文件里的版本修改为我们下载的版本,下图为修后的内容

保存之后,再次运行jekyll serve,得到下面结果,说明我们已经成功生成了站点

我们打开blog文件夹,里面多了一个名为_site的文件夹,这里面就是jekyll帮我们生成的整个静态站点内容

  • 本地运行:在浏览器输入http://127.0.0.1:4000/,就可以看见jekyll生成的默认站点的内容了

在配置环境的过程中,很有可能遇到其他问题,尝试复制错误信息,用搜索引擎搜索,看是否已有解决方法,如果你试了很多次还是不行,请直接在我的项目的Issues里提问,或者按我开头说的提示走,跳过配置环境这一步,不要被配置环境难倒。

使用模板

获取模板

在前面,我们使用jekyll默认模板创建了一个静态站点,离我们心目中一个漂亮的博客差距还很大,对于我们新手来说,最好的选择是选择一个前辈写好的博客模板,然后加上我们自己的修改,变成我们自己心目中的博客,等我们完全了解了整个运行过程,这时候如果想自己重新写一个模板,会更容易,现在要做的是站在前辈的肩膀上。如果你喜欢我的博客的样子,可以先下载我的源码,再修改成你喜欢的样子。如果你使用过git可以用下面命令clone我的源码到你本地的仓库

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

还可以直接下载源码压缩包,之后解压到一个目录里。

本地运行博客

然后打开cmd命令行,用cd命令切换到解压项目目录,执行jekyll serve,此时很有可能会再次遇到Bundler::GemNotFound的错误,可以按照前面解决错误的方式尝试解决,还可以执行bundle install命令,此命令可以将Gemfile文件中列出的所有依赖的gem全部安装,然后再次执行jekyll serve命令,可能还会遇到Gem::LoadError,根据错误提示,执行bundle exec jekyll serve便不再报错。运行成功之后,在浏览器输入http://127.0.0.1:4000/便可以看到我的网站。

发布博客到github

如果你没有把环境配置成功,不要气馁,先在自己的github上创建一个uername.github.io名称的仓库,将username修改为你的github的用户名,然后将刚才下载解压后的项目文件夹名称改为uername.github.io,然后执行下面命令,将本地代码push到github,然后打开浏览器访问https://username.github.io,首次访问,可能需要10分钟左右后,才能访问到,喝杯茶,耐心等待

jekyll搭建个人博客1的更多相关文章

  1. 使用 github + jekyll 搭建个人博客

    github + jekyll 本地写markdown,然后push到github,就成了博客 其实我一早就知道这两者可以搭建个人博客,因为本人有个很好的习惯——每天都会去看看一些热门文章,了解行业最 ...

  2. 【环境搭建】使用Jekyll搭建Github博客

    前言 昨天花了差不多一天的时间,使用Jekyll搭建起了一套Github博客,感觉不错,也特将搭建过程记录下来,方便有需要的朋友自行搭建. 搭建步骤 本环境是在Linux环境下搭建完成的 安装前建议使 ...

  3. 使用GitHub Pages+Jekyll搭建个人博客

    GitHub Pages 免费无限容量的站点数据托管工具(国内访问速度较慢),内置Jekyll服务,能将特定名称的代码仓库动态编译为静态网页 Jekyll 基于Ruby的静态网页生成系统,采用模板将M ...

  4. 使用github与jekyll搭建个人博客(一)

    虽然使用博客园还没有多久,但是最近看到一些大神的博客觉得很是炫酷.于是突发奇想,想要搭建自己的博客站点儿.编程菜鸟一枚,还是想要记录下最近的搭建博客经历. 使用github搭建个人博客的方式有很多,百 ...

  5. 使用github+jekyll搭建个人博客

    聊聊起初 每次看到大牛们的博客,都会激起一颗一定要搭建自己博客的心,毕竟有着一颗向大牛们看齐的心.但是一直不知道如何下手,从最初的csdn写写博客到在github上建立仓库写代码分享,虽然也能够记录一 ...

  6. Jekyll搭建个人博客

    网上也有HEXO 搭建的博客,有人说使用 HEXO 在多台电脑上发布博客,操作起来并不是那么方便,所以使用Jekyll 来搭建. Jekyll配置 1,安装ruby环境 Windows系统使用Ruby ...

  7. Jekyll搭建个人博客-拓展版

    关于Jekyll Jekyll 是一个简单的博客形态的静态站点生产机器.它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown (或者 Textile) 以及 Liquid 转化成一个完 ...

  8. jekyll搭建个人博客2

    目录 个性化 jekyll目录结构 修改个人信息 修改头像 修改背景颜色 关于头像的效果 图片问题 域名 个性化 jekyll目录结构 个性化就是要对文件内容作出修改,使得博客外观发生变化,在修改文件 ...

  9. jekyll+github搭建个人博客总结

    jekyll+github搭建个人博客 经过一天多的折腾,终于算是搭建好了自己的个人博客,看到有些社区评论说:在windows下用jekyll搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...

随机推荐

  1. TidHttpServer 使用示例

    unit Main; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ...

  2. 零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果

    原文:零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果 有网友问我如何在Blend内制作出倒影效果 我提供了 ...

  3. Attention is all you need及其在TTS中的应用Close to Human Quality TTS with Transformer和BERT

    论文地址:Attention is you need 序列编码 深度学习做NLP的方法,基本都是先将句子分词,然后每个词转化为对应的的词向量序列,每个句子都对应的是一个矩阵\(X=(x_1,x_2,. ...

  4. Linux简单文本处理

    tr命令:tr [option] set1 [set2] 删除或者替换set1中的字符在文本表示这个问题中,windows系统下,\r\n为换行:而linux系统下,\n为换行.win->lin ...

  5. QSqlQueryModel 居然默认是只读的!

    The model is read-only by default. To make it read-write, you must subclass it and reimplement setDa ...

  6. 使用spring容器干掉if-else

    spring容器干掉if-else 场景说明 最近新做一个项目,需要对不同店铺的商品做不同处理.例如storeA需要进行handleA操作,storeB需要进行handleB操作,如此类推 大家很容易 ...

  7. PWN菜鸡入门之CANARY探究

    看门见码 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <strin ...

  8. Appium+python自动化(十一)- 元素定位秘籍助你打通任督二脉 - 下卷(超详解)

    简介 宏哥看你骨骼惊奇,印堂发亮,必是练武之奇才! 按照上一篇的节目预告,这一篇还是继续由宏哥给小伙伴们分享元素定位,是不是按照上一篇的秘籍修炼,是不是感觉到头顶盖好像被掀开,内气从头上冒出去,顿时觉 ...

  9. 如何两个月刷400道leetcode

    前言随着互联网寒潮的到来, 越来越多的互联网公司提高了面试的难度,其中之一就是加大了面试当中手撕算法题的比例.这里说的算法题不是深度学习,机器学习这类的算法,而是排序,广度优先,动态规划这类既考核数据 ...

  10. Sole跟Tomcat的整合 Solr4.4 + Tomcat

    1, 下载Solr4.4 Tomcat7 2, 拷贝 solr-4.4.0\dist\solr4.4.war  => tomcat\webapps 下面 重命名为solr.war 3, 启动to ...