基于 GitBook 搭建个人博客

1.为什么要写博客?

本人之前也在博客园写了一些,后面怕写的一些文章是错的,误导他人,因此中断了继续写。

继续写博客的原因如下

  • 只为记录自己学习、思考、总结的过程
  • 提高自己将事情讲清楚的能力
  • 积累更多的知识,在需要使用的时候方便查找。 好记性不如烂笔头_

2.为什么选择使用 GitBook 来搭建?

1.正如上面所述,GitBook 更加方便管理且支持搜索,可以在有想要记录的时候,打开编辑器记录下,然后合适的时间分享(发布)下

2.GitBook 可以自己管理文章,想写什么想发什么看自己心情,不用考虑平台限制等因素

3.GitBook 是有md静态文件渲染出来的,基础文件可迁移性强。

3.搭建方式

3.1 GitBook 线上直接搭建

线上网址搭建地址 传送门 具体搭建教程可网上自行搜索,这里就不做过多记录。原因如下:

  • 国内网络环境问题,导致 GitBook 网站经常打不开,需要使用代理才能访问。
  • 修改提交后,更新显示有时间延迟。

3.2 由基于Node.js的命令工具开发

本人推荐使用这种方式,方便管理,配合自己的代码管理工具。简直不要太完美。

涉及到的工具:Node.js ,gitbook-cli,编译器 VS Code,Typora

Typora 下载地址:https://typora.io/

3.2.1 安装 GitBook 工具
  • 打开CMD终端,输入npm install gitbook-cli -g命令进行全局安装

  • 安装完成后,输入 gitbook --version来查看是否安装成功 第一次使用,cli 会自动安装gitbook,安装时间视网络环境而定,请耐心等待

  • 若要卸载,就执行 npm uninstall gitbook-cli -g来删除

由于我这里已经安装了,安装完成可用以下命令查看。

3.2.2 新建项目(书)

首先需要创建项目跟文件夹,步骤如下:

mkdir BookRecord
cd BookRecord
gitbook init

gitbook init 命令是用于初始化项目的,会创建 README.md 和 SUMMARY.md 两个项目必须的文件

  • README.md 是项目介绍文件,在运行后会固定展示在目录头部,tips:可以通过某种手动进行隐藏

  • SUMMARY.md 是项目的目录菜单

若 SUMMARY.md 中目录对应文件,则在执行gitbook init 时会自动创建。

3.2.3 本地启动调式

本地启动命令gitbook serve

执行该命令,会生成 _book 文件夹,这个文件夹是最终需要发布的文件夹。请自行在管理工具中忽略。

运行启动后,可直接访问ttp://localhost:4000,打开的第一个页面,将是README.md页面。

3.2.4 打包发布

执行gitbook build命令即可打包,打包后,在根目录有一个 _book 文件夹,

将该文件夹发布至 Nginx 或者 存储云 或 Tomcat 都可以。

4. GitBook 配置文件说明

如果想要对项目做单独的项目配置和使用其它插件,就需要使用配置文件进行配置。

在项目根目录创建book.json文件,文件内容如下:

{
"author": "Levy",
"description": "This is record sharing by Levy.",
"extension": null,
"generator": "site",
"isbn": "",
"links": {
"sharing": {
"all": null,
"facebook": null,
"google": null,
"twitter": null,
"weibo": null
},
"sidebar": {
"谷歌": "https://www.google.com"
}
},
"output": null,
"pdf": {
"fontSize": 12,
"footerTemplate": null,
"headerTemplate": null,
"margin": {
"bottom": 36,
"left": 62,
"right": 62,
"top": 36
},
"pageNumbers": true,
"paperSize": "a4"
},
"plugins": [],
"pluginsConfig": { },
"language": "zh-hans",
"title": "Levy",
"variables": {},
"styles": {
"website": "assets/styles/website.css"
}
}

更多参数配置请参考:https://github.com/GitbookIO/gitbook/blob/master/docs/config.md

插件配置查看另一篇文章 插件配置

基于 GitBook 搭建个人博客的更多相关文章

  1. 【玩转 WordPress】基于 Serverless 搭建个人博客图文教程,学生党首选!

    以下内容来自「玩转腾讯云」用户原创文章,已获得授权. 01. 什么是 Serverless? 1. Serverless 官方定义 Serverless 中的 Server是服务器的意思,less 是 ...

  2. 基于Hexo搭建个人博客网站

      ## 准备工作 首先下载[nodejs](https://nodejs.org/en/download/),一路next安装即可.验证是否安装成功: ```bash node -v # 输出 v1 ...

  3. 基于docker搭建wordpress博客网站平台

    WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用. WordPre ...

  4. 2019基于Hexo快速搭建个人博客,打造一个炫酷博客(1)-奥怪的小栈

    本文转载于:奥怪的小栈 这篇文章告诉你如何在2019快速上手搭建一个像我一样的博客:基于HEXO+Github搭建.并完成SEO优化,打造一个炫酷博客. 本站基于HEXO+Github搭建.所以你需要 ...

  5. 使用Jekyll + GitHub Pages免费搭建个人博客

    使用Jekyll + GitHub Pages免费搭建个人博客 My Blog:无名の辈 | VectorX (vectorxxxx.github.io) Download Ruby:Download ...

  6. 基于 Hexo + GitHub Pages 搭建个人博客(一)

    前言:我的博客写作之路 15 年刚上大学,第一次接触公众号,就萌生了创建一个公众号写点东西,但最终不了了之. 很快到了 16 年,开始接触网上各大博客网站,接触最多的当属 CSDN,萌生了注册一个博客 ...

  7. 基于 Hexo + GitHub Pages 搭建个人博客(二)

    在 基于 Hexo + GitHub Pages 搭建个人博客(一) 这篇文章中,我们已经知道如何使用 Hexo + GitHub Pages 搭建一个个人博客,GitHub 为我们提供了免费的域名和 ...

  8. 基于 Hexo + GitHub Pages 搭建个人博客(三)

    一.添加扫描二维码关注功能 打开 themes 目录下的 next 主题配置文件,找到 Wechat Subscriber 标签,将该标签下的配置改成如下形式: # Wechat Subscriber ...

  9. Mac 上搭建基于 Hexo + GitHub 个人博客

    环境配置 本人电脑系统:macOS Node.js 生成静态页面.安装Node.js Git 用于将本地 Hexo 内容提交到 Github.Xcode自带Git(前提:macOS已经安装了Xcode ...

随机推荐

  1. Numpy访问数组元素

    import numpy as np n = np.array(([1,2,3],[4,5,6],[7,8,9])) ''' array([[1, 2, 3], [4, 5, 6], [7, 8, 9 ...

  2. PHP fmod() 函数

    实例 返回 x/y 的浮点数余数: <?php$x = 7;$y = 2;$result = fmod($x,$y);echo $result;// $result equals 1, beca ...

  3. 集合框架-HashMap&HashSet&LinkedHshMap

    一.HashMap的底层实现 HashMap底层是基于数组和链表实现的.其中最重要的参数:容量和负载因子. 容量的默认大小事16,负载因子是0.75,当HashMap的size>16*0.75的 ...

  4. idea中运行Tomcat后控制台出现乱码(统一设置成UTF-8)

    出现问题:运行Tomcat后控制台出现乱码,输出语句乱码(idea 2019.3版本) 解决方法: 方案1:File----->Settings..----->Editor-----> ...

  5. 无版号的ios手游下架 TF签名才是正确选择?

    2020年8月1日开始,无版号的ios手游就要全部下架appstore了,在这样关键的时刻,TF签名成了ios手游的最后一根救命稻草.因为被下架或者根本无法通过appstore的上架审核,ios手游的 ...

  6. Qt使用MD5加密

    Qt中包含了大部分常用的功能,比如json.数据库.网络通信.串口通信以及今天说的这个MD5加密: Qt中将字符串进行MD5加密其实比较简单,代码如下: #include <QCoreAppli ...

  7. HTTP POST 请求的两种编码格式:application/x-www-form-urlencoded 和 multipart/form-data

    在常见业务开发中,POST 请求常常在这些地方使用:前端表单提交时.调用接口代码时和使用 Postman 测试接口时.我们下面来一一了解: 一.前端表单提交时 application/x-www-fo ...

  8. MyBatisPlus乐观锁,乐观锁竟然如此简单

    乐观锁 在便是过程中,我们经常会被问到乐观锁,悲观锁,都非常简单 乐观锁:顾名思义,思想十分乐观,总是认为不会出现问题,无论什么都不去上锁!如果出现了问题,就再更新测试 悲观锁:顾明思义,思想十分悲观 ...

  9. 【java】解决java compiler level does not match the version of the installed java project facet

    翻译内容:java编译器jdk版本与安装的java项目方面的版本不匹配 修改编译器jdk版本 项目右键选择->properties 如果项目的开发版本为,jdk1.8 ,选择修改为1.8 ,点击 ...

  10. java 增强for循环与泛型

    一 增强for循环 增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的.它的内部 原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作 ...