gitbook的作用
GitBook 是一个基于 Node.js 的命令行工具,支持 Markdown 和 AsciiDoc 两种语法格式,可以输出 HTML、PDF、eBook 等格式的电子书。GitBook 可以理解为文档格式转换工具。
所以GitBook并不是编辑工具,MarkDown编辑工具可以使用GitBook Editor(整合了git和markdown编辑器)
linux搭建gitbook
安装Node.js
- https://nodejs.org/en/download/ ,在官网下载对应版本(node-v8.9.1-linux-x64.tar.xz)
- 解压二进制包,解压后可以直接使用
- 便于使用做一个软连接和设置环境变量
ln -sv ./node-v8.9.1-linux-x64.tar.xz ./node
##/etc/profile
export PATH=$PATH:/usr/local/node/bin
安装gitbook命令行工具
npm install -g gitbook-cli
gitbook的简单使用
以下内容来自阿基米东的博客(https://blog.csdn.net/lu_embedded/article/details/81100704)
想象一下,现在你准备构建一本书籍,你在硬盘上新建了一个叫 mybook 的文件夹,按照以前的做法,你会新建一个 Word 文档,写上标题,然后开始巴滋巴滋地笔耕。但是现在有了 GitBook,你首先要做的是在 mybook 文件夹下执行以下命令:
gitbook init
执行完后,你会看到多了两个文件 —— README.md 和 SUMMARY.md,它们的作用如下:
- README.md —— 书籍的介绍写在这个文件里
- SUMMARY.md —— 书籍的目录结构在这里配置
使用Markdown编辑这两个文件
编辑SUMMARY.md 文件
# 目录
* [前言](README.md)
* [第一章](Chapter1/README.md)
* [第1节:衣](Chapter1/衣.md)
* [第2节:食](Chapter1/食.md)
* [第3节:住](Chapter1/住.md)
* [第4节:行](Chapter1/行.md)
* [第二章](Chapter2/README.md)
* [第三章](Chapter3/README.md)
* [第四章](Chapter4/README.md)
然后我们回到命令行,在 mybook 文件夹中再次执行 gitbook init 命令。GitBook 会查找 SUMMARY.md 文件中描述的目录和文件,如果没有则会将其创建
当你写得差不多,你可以执行 gitbook build 命令构建书籍,默认将生成的静态网站输出到 _book 目录。实际上,这一步也包含在 gitbook serve(这个命令会直接生成一个进程来提供http的访问) 里面,因为它们是 HTML,所以 GitBook 通过 Node.js 给你提供服务了
搭建nginx进行代理
nginx安装过程省略
配置文件
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server_tokens off;
server {
listen 80;
server_name localhost;
location = / {
autoindex on;
root /var/lib/jenkins/workspace; #gitbook文档存放的目录
}
location ~ ^/(open|safeguard|alrale|micah)(\/?)(.*)$ {
alias /var/lib/jenkins/workspace/$1/_book/$3;
auth_basic "Please Input Your Key";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
}
location ~ ^/([0-9a-zA-Z_-]*)(\/?)(.*)$ {
alias /var/lib/jenkins/workspace/$1/_book/$3;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}