使用Docker快速搭建你的Gitbook

 更新时间:2023年11月11日 09:26:28   作者:chenglei1208  
这篇文章主要介绍了使用Docker快速搭建你的Gitbook的相关资料,需要的朋友可以参考下

1 Gitbook 是什么?

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

2 系统环境

CentOS7系统 + Docker环境

3 GitBook容器

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

docker search gitbook

使用Docker快速搭建Gitbook_docker

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

docker pull docker.io/fellah/gitbook

使用Docker快速搭建Gitbook_Docker_02

基于该镜像创建一个容器

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目录就可以,后期的管理更加方便。

使用Docker快速搭建Gitbook_docker_03

4 Gitbook服务

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

docker exec -it my_gitbook /bin/bash

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

cd /srv/gitbook/booksgitbook init .
gitbook serve . &

5 预览

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

使用Docker快速搭建Gitbook_Docker_04

6 GitBook 服务多开

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

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

gitbook serve /somepath/your_docuemtn_dir/

本地就可以这样来访问:  http://localhost: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<admin@zhaowenyu.com>

ARG VERSION=3.2.3

LABEL versinotallow=$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 .

最后,可以通过以下命令创建容器:

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,然后....

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

1.给CVM的IP地址申请一个域名解析到该IP

2.在这个CentOS7上搭建一个git Server,以后push md文件就使用git方式

3.gitbook serve本身的并发不高,后续可以搭建一个nginx Web服务器代理

到此这篇关于使用Docker快速搭建你的Gitbook的文章就介绍到这了,更多相关Docker快速搭建Gitbook内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker容器的网络管理和网络隔离的实现

    Docker容器的网络管理和网络隔离的实现

    这篇文章主要介绍了Docker容器的网络管理和网络隔离的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • docker如何开启2375端口提供外部访问docker

    docker如何开启2375端口提供外部访问docker

    这篇文章主要介绍了docker如何开启2375端口提供外部访问docker问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Docker swarm如何通过docker-compose部署应用

    Docker swarm如何通过docker-compose部署应用

    这篇文章主要介绍了Docker swarm如何通过docker-compose部署应用问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Docker挂载目录失败问题解决方法

    Docker挂载目录失败问题解决方法

    在使用Docker时,可能会遇到挂载目录失败的问题,这通常是由于路径错误或权限问题导致,解决这一问题的方法包括检查挂载路径、使用正确的交互路径、避免挂载宿主机的非空目录等,需要的朋友可以参考下
    2024-10-10
  • 详解Docker学习笔记之搭建一个JAVA Tomcat运行环境

    详解Docker学习笔记之搭建一个JAVA Tomcat运行环境

    本篇文章主要介绍了详解Docker学习笔记之搭建一个JAVA Tomcat运行环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 浅谈docker-compose网络设置之networks

    浅谈docker-compose网络设置之networks

    这篇文章主要介绍了浅谈docker-compose网络设置之networks,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Docker安装常用组件(mysql,redis)的方法

    Docker安装常用组件(mysql,redis)的方法

    今天小编就为大家分享一篇关于Docker安装常用组件(mysql,redis)的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • docker部署Macvlan实现跨主机网络通信的实现

    docker部署Macvlan实现跨主机网络通信的实现

    这篇文章主要介绍了docker部署Macvlan实现跨主机网络通信的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • Docker 安装 Jenkins 并解决初始安装插件失败问题

    Docker 安装 Jenkins 并解决初始安装插件失败问题

    这篇文章主要介绍了Docker 安装 Jenkins 并解决初始安装插件失败问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • docker配置修改阿里云镜像仓库的实现

    docker配置修改阿里云镜像仓库的实现

    这篇文章主要介绍了docker配置修改阿里云镜像仓库的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论