美文网首页Devops
「文档服务搭建」使用 GitLab、Jenkins搭建基于 Do

「文档服务搭建」使用 GitLab、Jenkins搭建基于 Do

作者: 孔睿 | 来源:发表于2018-11-06 16:05 被阅读0次
目的

搭建公司内部文档管理平台,修改完毕后推送至远端自动刷新

依赖环境

DocsifyGitLabJenkins

版本无要求

运行环境

CentOS Linux release 7.3.1611

依赖环境

如本地已安装需要的依赖环境,可直接略过该部分。

GitLab

介绍

GitLab是一个开源的Git仓库管理工具。

使用官网提供的安装方式,可以在公司内网上搭建私人的Git平台。

官网地址

初始化

打开系统防火墙 HTTP 和 SSH 访问权限
sudo yum install -y curl policycoreutils-python openssh-server cronie
sudo lokkit -s http -s ssh
安装邮件代理服务
sudo yum install postfix
sudo service postfix start
sudo chkconfig postfix on
添加GitLab仓库并安装
curl -sS http://packages.gitlab.com.cn/install/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
启动服务
sudo gitlab-ctl reconfigure
通过域名访问

第一次访问 GitLab,需要输入初始化管理员账号的密码,系统默认的管理员账号为 root。

创建项目

新建Project
image-20181106114905907 image-20181106114937063
生成本机秘钥文件
image-20181106114416786
添加SSH Key
image-20181106114824567
Clone到本地
image-20181106115509558
git clone http://10.10.13.28/konghaorui/my-docs.git

Docsify

介绍

一个神奇的文档网站生成工具

官网地址

样式预览
image-20181106101916682 image-20181106101936176

初始化

安装脚手架工具(本机、服务器都需安装)
npm i docsify-cli -g
生成项目

进入Clone下来的项目目录,初始化文档工程

cd my-docs
docsify init ./docs
本地预览
docsify serve docs

Jenkins

介绍

Jenkins是一个开源的、提供友好操作界面的持续集成工具

主要用于持续、自动构建项目、测试软件工程、监控外部任务的运行

官网地址

初始化

因为服务器上已有tomcat服务在运行,所以此处使用直接挂载Jenkins到tomcat服务下的方式,相对比较简洁。如没有tomcat服务可以选择其他方式进行搭建。

下载war包

进入下载页面,选择对应版本安装包

image-20181106141611995
放置war包

将下载好的war包放置到tomcat安装目录,webapps文件夹下

image-20181106142110320
启动tomcat
cd bin
sh startup.sh

启动完毕后,访问 http://localhost:8080/jenkins 即可看到Jenkins页面

首次启动需要输入初始密码,密码信息在标记的文件位置查看

image-20181106142457633

注册完新用户再次进入就可以看到Jenkins首页了

image-20181106142655453

自动部署

在上面基本的环境都已经搭建成功,现在做的就是实现文档自动部署功能,使git项目能够和docsify相关联。

配置Jenkins

  • 打开jenkins页面

  • 添加插件:系统管理 - 插件管理

  • 需要添加的插件:Post Build Task、Gitlab Hook、Gitlab

  • 安装后重启Jenkins

创建任务
image-20181106144202434
添加源码管理

填写git仓库地址,添加用户,选择默认获取分支

image-20181106144520612
设置构建触发器
image-20181106145526720
设置构建后操作,自动启动docsify服务
image-20181106145715343 image-20181106145747153

设置自动启动docsify脚本

image-20181106145932345
git pull origin master
#判断进程是否存在,如果不存在就启动它
PIDS=`ps -ef |grep docsify |grep -v grep | awk '{print $2}'`
if [ "$PIDS" != "" ]; then
echo "docsify is runing!"
else
#运行进程
echo "starting docsify!"
docsify serve docs --port 4921 &
fi
保存配置

配置GitLab

设置webhook,当有提交时自动触发Jenkins任务

image-20181106150537152 image-20181106151039402

可点击test按钮模拟推送事件

image-20181106151321564

如出现200提示,说明任务触发成功

image-20181106152120100

查看Jenkins任务是否执行

image-20181106152214123

测试

修改任意文件内容后推送至远端,访问 http://服务器地址:4921 查看文档是否改变

相关文章

网友评论

    本文标题:「文档服务搭建」使用 GitLab、Jenkins搭建基于 Do

    本文链接:https://www.haomeiwen.com/subject/pqpuxqtx.html