使用Docker快速搭建你的Gitbook
1 Gitbook 是什么?
Gitbook是一個(gè)能將使用 Markown 語法的 md 格式文檔,快速制作成各種格式的精美電子書的工具。還支持多人同時(shí)開發(fā)文檔,比如多人同時(shí)翻譯一本書籍,這個(gè)功能可以大大增加工作效率。
2 系統(tǒng)環(huán)境
CentOS7系統(tǒng) + Docker環(huán)境
3 GitBook容器
啟動(dòng)好了Docker服務(wù)之后,我們就可以拉取Gitbook鏡像了。先查找合適的鏡像。不過由于Docker Hub的服務(wù)器在USA,國內(nèi)又有網(wǎng)絡(luò)出口限制,因此下載速度可能會(huì)很忙,請(qǐng)耐心等待,或者使用國內(nèi)HUB。
docker search gitbook
選好需要鏡像后,我們需要將鏡像拉取到本地
docker pull docker.io/fellah/gitbook
基于該鏡像創(chuàng)建一個(gè)容器
docker run -itd --name="my_gitbook" -h="my_gitbook" -p 4000:4000 -v /data/gitbook/books:/srv/gitbook/books 2908 /bin/bash
在創(chuàng)建容器時(shí)考慮到可以使用gitbook提供web服務(wù),可以用在搭建web服務(wù)器了就將4000端口映射到容器內(nèi)gitbook的默認(rèn)端口4000,當(dāng)然你也可以搭建一個(gè)web服務(wù)器。還有就是希望這個(gè)容器只是提供gitbook服務(wù),至于md文檔我放置在CentOS7的/data/gitbook/books目錄就可以,后期的管理更加方便。
4 Gitbook服務(wù)
容器創(chuàng)建好了,接下來就是進(jìn)入容器內(nèi)部使用gitbook了
docker exec -it my_gitbook /bin/bash
前面講項(xiàng)目目錄文件/data/gitbook/books映射到容器的/srv/gitbook/books目錄了,現(xiàn)在進(jìn)入該目錄初始化gitbook項(xiàng)目并啟動(dòng)預(yù)覽服務(wù)即可
cd /srv/gitbook/booksgitbook init .
gitbook serve . &
5 預(yù)覽
如果上面的一切都OK的話,你就可以通過瀏覽器訪問你的gitbook項(xiàng)目了。
6 GitBook 服務(wù)多開
gitbook啟動(dòng)的web 服務(wù)默認(rèn)監(jiān)聽4000端口,而重啟監(jiān)控進(jìn)程默認(rèn)監(jiān)聽35729端口。
一般這樣可以啟動(dòng)一個(gè)電子書web服務(wù):
gitbook serve /somepath/your_docuemtn_dir/
本地就可以這樣來訪問: http://localhost:4000
如果要啟動(dòng)另一部電子書服務(wù)的話, 就需要同時(shí)修改web端口和監(jiān)控進(jìn)程端口, 類似這樣:
gitbook serve --lrport 35288 --port 4001 /path2/your_another_doc_dir/
指定端口號(hào)再啟動(dòng)
gitbook serve --lrport 35730 --port 4001
7 構(gòu)建一個(gè)自定義的 鏡像
編寫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,就可以創(chuàng)建鏡像了:
docker build -t gitbook:v2 .
最后,可以通過以下命令創(chuàng)建容器:
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 //生成靜態(tài)網(wǎng)頁 gitbook serve //生成靜態(tài)網(wǎng)頁并運(yùn)行服務(wù)器 gitbook ls //列出本地所有的gitbook版本 gitbook ls-remote //列出遠(yuǎn)程可用的gitbook版本 gitbook update //更新到gitbook的最新版本
9 后記
上面使用了一個(gè)簡單的方法搭建了gitbook服務(wù),其實(shí)一開始我并沒有這樣想,開始我是想先安裝nodejs,然后安裝npm,然后安裝cnpm,然后安裝gitbook,然后....
還有就是上面的搭建好了之后還有很多可以優(yōu)化的地方,比如:
1.給CVM的IP地址申請(qǐng)一個(gè)域名解析到該IP
2.在這個(gè)CentOS7上搭建一個(gè)git Server,以后push md文件就使用git方式
3.gitbook serve本身的并發(fā)不高,后續(xù)可以搭建一個(gè)nginx Web服務(wù)器代理
到此這篇關(guān)于使用Docker快速搭建你的Gitbook的文章就介紹到這了,更多相關(guān)Docker快速搭建Gitbook內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Docker Compose中獲取最新鏡像的多種方法總結(jié)
Docker 鏡像是 Docker 容器的基礎(chǔ),鏡像包含了應(yīng)用程序所需的所有文件和依賴,Docker-Compose 默認(rèn)不會(huì)自動(dòng)拉取最新的鏡像版本,這可能會(huì)導(dǎo)致使用過時(shí)的鏡像,從而錯(cuò)過重要的更新,為了確保 Docker-Compose 始終使用最新的鏡像,我們可以采用多種方法,以下將詳細(xì)介紹這些方法2024-08-08docker中運(yùn)行PostgreSQL容器的簡單步驟
這篇文章主要給大家介紹了關(guān)于docker中運(yùn)行PostgreSQL容器的簡單步驟,隨著docker的廣泛應(yīng)用,為了提供便利的管理,PostgreSQL數(shù)據(jù)庫也支持docker的安裝方式,需要的朋友可以參考下2023-08-08Docker容器定時(shí)備份數(shù)據(jù)庫并發(fā)送到指定郵箱(設(shè)計(jì)思路)
這篇文章主要介紹了Docker容器定時(shí)備份數(shù)據(jù)庫并發(fā)送到指定郵箱,文中寫了一下shell腳本,邏輯也很簡單,當(dāng)前時(shí)間與啟動(dòng)時(shí)間相同時(shí),則調(diào)用sendmail函數(shù)發(fā)送郵件,具體腳本跟隨小編一起看看吧2022-01-01Docker容器實(shí)戰(zhàn)之鏡像與容器的工作原理
這篇文章主要介紹了Docker容器實(shí)戰(zhàn)之鏡像與容器,關(guān)于鏡像與容器的工作原理,下面文章將詳細(xì)介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05docker實(shí)現(xiàn)將本地文件復(fù)制到docker容器內(nèi)
這篇文章主要介紹了docker實(shí)現(xiàn)將本地文件復(fù)制到docker容器內(nèi)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01詳解docker國內(nèi)鏡像拉取和鏡像加速registry-mirrors配置修改
由于國內(nèi)訪問直接訪問Docker hub網(wǎng)速比較慢,拉取鏡像的時(shí)間就會(huì)比較長。一般我們會(huì)使用鏡像加速或者直接從國內(nèi)的一些平臺(tái)鏡像倉庫上拉取2017-05-05docker啟動(dòng)logstash失敗的問題及解決(可能原因)
這篇文章主要介紹了docker啟動(dòng)logstash失敗的問題及解決(可能原因),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08Windows?Server?2012?R2?安裝?Docker的詳細(xì)步驟
這篇文章主要介紹了Windows?Server?2012?R2?安裝?Docker,在這個(gè)給大家說明下使用windows10、Windows?Server?2016以上系統(tǒng)可直接使用安裝包,低版本系統(tǒng)需要使用?Docker?Toolbox?來進(jìn)行安裝使用?Docker,需要的朋友可以參考下2022-04-04liunx內(nèi)存滿了,docker中overlay2爆表解決方案
這篇文章主要介紹了liunx內(nèi)存滿了,docker中overlay2爆表解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08