前言
平时会使用md编写项目文档,直接将md文档展示给同事阅读时感觉不方便,文档内容做不到实时同步。经研究,可以使用i5ting_toc插件将md文档转换成html,并结合Jenkins将html发布到Nginx。
安装
-
前置条件(Linux环境CentOS 8)
-
安装i5ting_toc
npm install -g i5ting_toc
-
进入项目目录(包含README.md文件),执行如下命令:
i5ting_toc -f 文件名.md -o
-
项目目录会生成一个
preview
文件夹,css
和js
均包含在此处,点击README.html
查看。每次向别人展示最新文档时,都需要重新生成一次,再将preview
文件夹发送给别人,非常不方便。 -
结合Jenkins拉取项目git代码,执行
i5ting_toc -f 文件名.md -o
命令,再将生成的preview
文件夹移动到Nginx下,直接访问文件地址,即可查看最新文档。结合Jenkins
-
新建任务,输入任务名称,选择
构建一个*风格的软件项目
-
源码管理选择Git,Repository URL输入仓库地址,Credentials填写Git账号密码,默认拉取主干代码。
-
添加构建步骤,选择执行shell,保存构建即可,
test_scene_tool
会根据Jenkins任务名称命名。source ~/.bash_profile i5ting_toc -f README.md -o mv /var/lib/jenkins/workspace/test_scene_tool/preview /usr/share/nginx/html
Jenkins执行shell命令会提示:
command not found
,这是因为Jenkins执行shell时无法获取环境变量,所以必须在shell脚本上加上环境变量如下:#!/bin/bash source ~/.bash_profile source /etc/profile
按上述修改还会报
command not found
,CentOS8 以yum方式安装rpm版本jenkins,默认jenkins用户为jenkins 而不是root解决方案:
- 打开配置文件
vim /etc/sysconfig/jenkins
-
修改 $JENKINS_USER 值为 root
-
重启jenkins
systemctl restart jenkins.service
ps -ef|grep jenkins
会发现,此时已变成root身份运行jenkins
-
浏览器地址
http://xxx.xxx.xxx.xxx/preview/README.html
访问,(xxx.xxx.xxx.xxx
服务器IP,如果本机输入localhost
)
-