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