搭建部署 wiki

  |   0 评论   |   0 浏览

搭建部署 wiki

环境准备

  操作系统:CentOS 7
软件:docker / GitLab / jenkins(blueocean 版本)

安装 GitLab

1$ docker run -d  -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
2# -d:后台运行
3# -p:将容器内部端口向外映射
4# --name:命名容器名称
5# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录

  按上面的方式,GitLab 容器运行没问题,但在 GitLab 上创建项目的时候,生成项目的 URL 访问地址是按容器的 hostname 来生成的,也就是容器的 id。作为 GitLab 服务器,我们需要一个固定的 URL 访问地址,于是需要配置 gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)。

 1# gitlab.rb文件内容默认全是注释
 2$ vim /home/gitlab/config/gitlab.rb
 3# 配置http协议所使用的访问地址,不加端口号默认为80
 4external_url 'http://x.x.x.x'
 5
 6# 配置ssh协议所使用的访问地址和端口
 7gitlab_rails['gitlab_ssh_host'] = 'http://x.x.x.x'
 8gitlab_rails['gitlab_shell_ssh_port'] = 222 # 此端口是run时22端口映射的222端口
 9:wq #保存配置文件并退出
10修改gitlab.rb文件
11# 重启gitlab容器
12$ docker restart gitlab
13此时项目的仓库地址就变了。如果ssh端口地址不是默认的22,就会加上ssh:// 协议头
14打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)

安装 jenkins

1docker run \
2  -u root \
3  --rm \
4  -d \
5  -p 8080:8080 \
6  -p 50000:50000 \
7  -v jenkins-data:/var/jenkins_home \
8  -v /var/run/docker.sock:/var/run/docker.sock \
9  jenkinsci/blueocean

mkdocs 搭建

  目录结构如下

1.
2├── Dockerfile
3├── Jenkinsfile
4├── README.md
5├── docs
6└── mkdocs.yml

  Dockerfile 内容如下

1From squidfunk/mkdocs-material
2ADD . /docs

  Jenkinsfile 内容如下

 1import java.text.SimpleDateFormat
 2node {
 3    def dockerName='wiki'
 4    stage('git pull'){
 5            sh 'pwd'
 6            git credentialsId: '001', url: 'http://1xx.xxx.xx.xx/sunwei/wiki.git'
 7        }
 8    stage('docker run') {
 9        sh 'pwd'
10        def imageUrl = "squidfunk/mkdocs-material:v1"
11        def customImage = docker.build(imageUrl)
12        sh "docker rm -f ${dockerName} || true"
13        docker.image('squidfunk/mkdocs-material:v1').run("-it -d --name ${dockerName} -p 8090:8000  --workdir /docs")
14        }
15}

配置 jenkins

  新建一个 pipeline 项目
image.png

  配置 jenkins 凭证

jenkins - 配置 - 全局配置

image.png配置 GitLab

管理中心 - 项目 - 编辑

  image.png这样每次提交代码时,就会触发自动构建

  可以实现 wiki,Markdown 编辑提交自动部署了

---------------------------------------------------------------
>> 博客地址:https://blog.mufengs.com
>> 邮箱地址:[email protected]
>> 微信帐号:Do8080
>> Github : https://github.com/mufengcoding
---------------------------------------------------------------