web服务器搭建-使用Docker快速搭建Gitbook

生活百科1年前 (2023)发布 aixure
75 0 0

1 Gitbook是什么?

Gitbook是一个能将使用 Markown 语法的md格式文档,快速制作成各种格式的精美电子书的工具。还支持多人同时开发文档,比如多人同时翻译一本书籍,这个功能可以大大增加工作效率。

2 系统环境

CentOS7系统 + Docker环境

3 GitBook容器

启动好了Docker服务之后,我们就可以拉取Gitbook镜像了。先查找合适的镜像。不过由于Docker Hub的服务器在USAweb服务器搭建,国内又有网络出口限制,因此下载速度可能会很忙,请耐心等待,或者使用国内HUB。

docker search gitbook

web服务器搭建-使用Docker快速搭建Gitbook

选好需要镜像后,我们需要将镜像拉取到本地

docker pull docker.io/fellah/gitbook

基于该镜像创建一个容器

docker run -itd –name=”my_gitbook” -h=”my_gitbook”-p 4000:4000 -v /data/gitbook/books:/srv/gitbook/books 2908 /bin/bash

在创建容器时考虑到可以使用gitbook提供web服务,可以用在搭建web服务器了就将4000端口映射到容器内gitbook的默认端口4000,当然你也可以搭建一个web服务器。还有就是希望这个容器只是提供gitbook服务,至于md文档我放置在CentOS7的/data/gitbook/books目录就可以,后期的管理更加方便。

web服务器搭建-使用Docker快速搭建Gitbook

4 Gitbook服务

容器创建好了,接下来就是进入容器内部使用gitbook了

docker exec -it my_gitbook /bin/bash

前面讲项目目录文件/data/gitbook/books映射到容器的/srv/gitbook/books目录了,现在进入该目录初始化gitbook项目并启动预览服务即可

cd /srv/gitbook/books

gitbook init .

gitbook serve . &

5 预览

如果上面的一切都OK的话,你就可以通过浏览器访问你的gitbook项目了。

web服务器搭建-使用Docker快速搭建Gitbook

6 GitBook 服务多开

gitbook启动的web 服务默认监听4000端口,而重启监控进程默认监听35729端口。

一般这样可以启动一个电子书web服务:

gitbook serve /somepath/your_docuemtn_dir/

本地就可以这样来访问: :4000

如果要启动另一部电子书服务的话, 就需要同时修改web端口和监控进程端口, 类似这样:

gitbook serve --lrport 35288 --port 4001 /path2/your_another_doc_dir/

指定端口号再启动

gitbook serve --lrport 35730 --port 4001

7 构建一个自定义的 镜像

编写Dockerfile

FROM node:7

MAINTAINER Wenyu

ARG VERSION=3.2.3

LABEL version=$VERSION

RUN npm install --global gitbook-cli &&
  gitbook fetch ${VERSION} &&
  npm cache clear &&
  rm -rf /tmp/*

RUN wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sh /dev/stdin

WORKDIR /srv/gitbook

VOLUME /srv/gitbook /srv/html

EXPOSE 4000 35729

CMD /usr/local/bin/gitbook serve

有了Dockerfile,就可以创建镜像了:

docker build -t gitbook:v2 .

最后web服务器搭建,可以通过以下命令创建容器:

docker run -itd –name=”my_gitbook2″ -h=”my_gitbook2″ -p 4000:4000 -p 35729:35729 -v /data/books/:/srv/gitbook/books 0e5c /bin/bash

8 GitBook 常用命令:

gitbook init //初始化目录文件
gitbook help //列出gitbook所有的命令
gitbook build //生成静态网页
gitbook serve //生成静态网页并运行服务器
gitbook ls //列出本地所有的gitbook版本
gitbook ls-remote //列出远程可用的gitbook版本

gitbook update //更新到gitbook的最新版本

9 后记

上面使用了一个简单的方法搭建了gitbook服务,其实一开始我并没有这样想,开始我是想先安装nodejs,然后安装npm,然后安装cnpm,然后安装gitbook,然后….

还有就是上面的搭建好了之后还有很多可以优化的地方,比如:

限时特惠:本站每日持续更新海量各大内部网赚创业教程,会员可以下载全站资源点击查看详情
站长微信:

© 版权声明

相关文章

暂无评论

暂无评论...