Gitbook 就是一个电子书生成工具,可以用来写电子书,电子教程。有点像Hexo,写完后可以生成html,还可以生成pdf。
当然,跟Hexo一样,也是用Markdown写内容的,挺方便好用的。
一、Gitbook搭建
怎么搭建使用,看这篇文章:Docker搭建Gitbook
当然,可以用我上传的镜像:
- Ubuntu(Linux)用:
docker pull hduzn/gitbook:3.2.3
- Windows用:
docker pull hduzn/gitbook_win:3.2.3
为什么不同,只是因为Windows下有个js文件会报错,就改了一下这个js文件。
二、Gitbook创建一本电子书/教程
1.新建电子书目录
比如新建目录:book_python
2.初始化
如果是用Docker部署的Gitbook,就创建容器,进入容器后再执行 gitbook init
;
如果部署在本地,没有用Docker,就直接进入 book_python 目录,执行 gitbook init
执行gitbook init
后,在book_python目录下就生成了:README.md 和SUMMARY.md 文件。
1 | # Docker部署Gitbook |
3.编辑 SUMMARY.md 文件
SUMMARY.md 是一个章节和子章节的目录结构文件。
比如编辑内容如下:
1 | # Summary |
README.md 文件就是简介内容,随便写。
4.生成目录结构所有文件
编辑好SUMMARY.md 文件后,再次执行gitbook init
后,会生成所有目录和对应的文件。
然后就编辑章节目录下的文件就行。
后续再修改 SUMMARY.md 文件,再执行gitbook init
后,不会修改和删除已有文件,只会添加新的章节和子章节的对应文件。
5.启动服务,在线预览
1 | gitbook serve |
会生成 _book
目录,然后打开 http://localhost:14000 就可以看到电子书了(我把4000端口映射到14000了,默认是4000)
6.Gitbook输出格式
如果只是创建电子书,不生成在线的服务,只用 build 就行。
1 | # 1).输出静态HTML页面,生成 _book 目录; |
三、Gitbook使用其它问题
1.后台运行服务
直接执行gitbook serve
,关掉窗口就关掉了。
如果想要后台运行的话,用Docker和Linux都挺方便的,直接用nohup命令就行。Docker创建的容器也是Linux系统。
参考这篇笔记:Linux nohup 后台运行 命令详解
这样就可以在服务器上用了。
1 | nohup gitbook serve > /dev/null 2>&1 & |
会返回进程的PID号,直接kill [PID]
就可以结束进程。
2.文件权限问题
如果是直接在本机上映射的目录里的文件直接编辑就行,就没啥问题。
但如果我是在Linux的服务器上用Docker建了gitbook容器的,映射的目录是在Linux的机器上,
然后我是本地编辑好了,再上传到Linux服务器的映射目录里,然后就有文件权限问题了。
比如修改完的 SUMMARY.md 文件上传想覆盖原来的文件,就报权限问题了。
所以直接在Linux服务器的映射目录下执行chmod 777 *
命令,把权限都给了就行。
3.插入图片
如果文章中需要插入图片的,建议使用相对路径,很方便。
直接在 book_python 目录下建一个imgs目录,用于存放图片。
比如我在imgs目录下放了一张图片:gitbook.png
然后用Markdown语法使用就行:![](\imgs\gitbook.png)
或者:<img src="/imgs/gitbook.png" style="zoom: 75%;"/>
后面这种还可以按比例显示,反正写Hexo博客时,我就一直偏爱用后者。
这个路径是根目录下的文件,其实也就是 SUMMARY.md 和 README.md 文件内这样使用。
如果在章节目录下,可以用:<img src="../imgs/gitbook.png" style="zoom: 75%;"/>
表示图片路径在上一层路径。
4.配置文件book.json
在 book_python 目录下自己建个 book.json文件。
内容一般就标题、作者这些,比如:
1 | { |
配置文件中更多的内容,网上搜一下就有。
5.折叠左侧目录侧边栏(插件)
安装插件:expandable-chapters-small ,就可以实现左侧的目录自动折叠。
1 | # 本地环境在 book_python 下执行; |
然后在配置文件 book.json 加上相关内容:
1 | { |
6.单击查看图片(插件)
安装插件:lightbox ,就可以实现单击查看图片,以弹窗形式查看图片。
1 | # 本地环境在 book_python 下执行; |
然后在配置文件 book.json 加上相关内容:
1 | { |
7.文章悬浮目录(插件)
安装插件:ancre-navigation ,就有右上角悬浮导航和回到顶部按钮。
注意:内容从从h1、h2依次写标题。
1 | # 本地环境在 book_python 下执行; |
然后在配置文件 book.json 加上相关内容:
1 | { |
- 本文标题:Gitbook使用指南
- 本文作者:HDUZN
- 创建时间:2023-01-24 20:14:26
- 本文链接:http://hduzn.cn/2023/01/24/Gitbook使用指南/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!