阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

局域网内利用GitLab+Jenkins自动生成GitBook并发布(Nginx)

226次阅读
没有评论

共计 2161 个字符,预计需要花费 6 分钟才能阅读完成。

安装了 GitBook,内网使用,没法用上 GitBook 的网页。用 gitbook serve 只能展示一本书,而且也不利于长期维护。

于是使用 GitLab,Jenkins 和 Nginx 配合 GitBook 使用。

基本的流程是这样的,每本书作为项目托管到 GitLab 上,每次提交,GitLab 会触发 Jenkins,Jenkins 会把仓库的内容拉下来,gitbook build 并复制到 Web server(Nginx)的目录下, 并加上可读权限,然后局域网内的人就都可以直接访问了。

下面记录过程

首先机器上已经安装好了 gitlab,jenkins,gitbook 和 nginx。

然后要给 jinkins 执行 shell 程序的 sudo 权限。

编辑 /etc/sudoers 文件

加上

jenkins ALL=(ALL) NOPASSWD:ALL

这样 jenkins 就有 sudo 权限了而且免输密码

然后 jenkins 要安装一些插件,Git client plugin Git plugin Gitlab Hook Plugin(也许只要最后一个?我是一次性三个都安装了)

假设我的机子的 IP 是 192.168.1.2,gitlab 在端口 8081,jenkins 在端口 8082,nginx 在 80 端口并且开放了文件夹 /www/

接下来举个例子

/********************** 在 gitlab 上新建项目并配置 web hook**********************************/

在 gitlab 上新建一个项目

比如叫做 Books_测试, 对应的 url 为 

http://192.168.1.2:8081/zhuangqiubin/Books_ceshi

在项 目页面左下角进入 Settings

左边面板选择Web Hooks

填入 url 

http://192.168.1.2:8082/gitlab/build_now

点击左下按钮 Add Web Hook

然后在本机新建 README.md 和 SUMMARY.md 两个文件,提交到这个项目中去

/******************** 配置 jenkins****************************************************/

登陆 jenkins http://192.168.1.2:8082

左上角新建 填入名称 比如叫做 GitBook_测试

选择 构建一个自由风格的软件项目

点击 OK 进入详细设置

源码管理 选择 git

Repository URL 填入 项目 url 比如

http://192.168.1.2:8081/zhuangqiubin/Books_ceshi.git

Credentials 处点击 ADD 填入你的 gitlab 用户名和密码

确定添加后 把 none 换成你刚刚添加的用户名密码

最后 Add Repository 确定

往下 构建 增加构建步骤 Execute shells

加入以下代码 (把其中的 测试 替换成你想要的书名)

gitbook build
sudo rm -rf  /www/books/测试
sudo cp -a    _book  /www/books/测试
sudo chmod  777  /www/books/ 测试

确定后 在本机 clone 编辑一下 再 push 回去 看是否能触发构建

然后就可以在本机编辑,提交,然后到对应页面 比如

http://192.168.1.2/books/ 测试 /

查看效果了

这样以后就可以用 gitlab 来管理 gitbook 了,只要提交就自动 build 并搬运到 www 文件夹供其他人访问。

更多 GitLab 相关教程见以下内容

Ubuntu 14.04 下安装 GitLab 指南  http://www.linuxidc.com/Linux/2015-12/126876.htm

如何在 Ubuntu Server 14.04 下安装 Gitlab 中文版  http://www.linuxidc.com/Linux/2015-12/126875.htm

CentOS 源码安装 GitLab 汉化版  http://www.linuxidc.com/Linux/2015-10/124648.htm

在 Ubuntu 12.04 上安装 GitLab http://www.linuxidc.com/Linux/2012-12/75249.htm

GitLab 5.3 升级注意事项 http://www.linuxidc.com/Linux/2013-06/86473.htm

在 CentOS 上部署 GitLab (自托管的 Git 项目仓库) http://www.linuxidc.com/Linux/2013-06/85754.htm

在 RHEL6/CentOS6/ScientificLinux6 上安装 GitLab 6.0.2 http://www.linuxidc.com/Linux/2014-03/97831.htm

CentOS 6.5 安装 GitLab 教程及相关问题解决 http://www.linuxidc.com/Linux/2014-05/101526.htm

GitLab 的详细介绍:请点这里
GitLab 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-05/131136.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2161字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中