前言
本人至少重复搭建过 5 次环境,基本上所有踩过的坑文章中都有提及到,现在百度到的一些资料,基本上要么不全面,要么搭建过程中会遇到很多异常,这篇文章会讲到如何搭建 docker 环境,并且安装 python、 jdk、 allure、环境,结合 Gitee 码云来实现持续集成,全程图文教程,一文搞定持续集成部署!
前提条件
1、使用Linux的GUI版本,不能安装mini版;
2、docker要求centOS内核高于3.10。
使用uname -r命令查看内核参数:

安装docker
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

如上图所示则证明安装成功。
添加阿里云的软件源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
然后更新yum缓存:
sudo yum makecache
安装docker-ce(CE指的是社区版)
sudo yum -y install docker-ce
下载安装会有点慢,依网速和机器而定,请耐心等待!

同样,如上图所示,则表示安装成功。
启动docker
sudo systemctl start docker
然后我们测试是否安装成功,执行如下命令:
docker info
如下所示则证明docker安装成功:

设置docker开机自启
sudo systemctl enable docker
到此为止,docker就算安装成功了。
下载Jenkins镜像
docker pull jenkins/jenkins:2.289.3-centos

挂载目录
mkdir -p /home/hep/jenkins_node
升级权限:
chmod -R 777 /home/hep/jenkins_node

启动Jenkins镜像
docker run -d -uroot -p 8989:8080 --name jenkins1 -e LANG=C.UTF-8 -v /home/hep/jenkins_node:/var/jenkins_home jenkins/jenkins:2.289.3-centos

查看Jenkins镜像是否启动成功
docker ps

进入Jenkins容器
docker exec -it -uroot jenkins1 bash
更新容器内包
# 获取最新的软件包
yum update
报错:Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
如果你和我一样有如上报错,可以参考一下处理方式,如果没有则直接跳过:
1、第一步,首先进入到 yum 的 repos 目录
cd /etc/yum.repos.d/
2、第二步,修改 centos 文件内容
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
3、第三步,生成缓存更新(第一次更新,速度稍微有点慢,耐心等待两分钟左右)
yum makecache
4、第四步,运行 yum update 并重新安装 vim
yum update -y
yum -y install vim
安装后续依赖包
如果全都出现complete!才算全部安装成功,否则要检查报错哟!

yum -y install gcc automake autoconf libtool make
yum -y install make*
yum -y install zlib*
yum install openssl-devel -y //
yum -y install sudo

容器内安装Python3环境
# 进入jenkins_home目录
cd /var/jenkins_home/
# 创建python存放路径
mkdir python3
cd python3/
# 安装wget
yum -y install wget
# 下载python3
wget http://npm.taobao.org/mirrors/python/3.7.9/Python-3.7.9.tgz
# 解压文件目录
tar -zxvf Python-3.7.9.tgz
# 查看解压后的文件
ls
# 更改解压后文件包名(可选项)
mv Python-3.7.9 py3.7
make编译安装python3
1、第一步
cd py3.7
2、第二步
./configure --prefix=/var/jenkins_home/python3 --with-ssl
3、第二步
make
4、第四步
make install
添加python3的软连接
添加python3软链接
ln -s /var/jenkins_home/python3/bin/python3.7 /usr/bin/python3
添加pip3软链接
ln -s /var/jenkins_home/python3/bin/pip3 /usr/bin/pip3
这时候就算装好python3了,试试用python3命令看看能不能进入python解释器吧!

容器内安装allure环境
首先去官网下载allure包:https://github.com/allure-framework/allure2/releases
我下载的是最新的2.21.0.zip

然后打开一个新的xshell连接页面,退出到容器外面

然后安装lrzsz工具:
# 使用linux中的rz或者sz命令,可以讲电脑中的文件上传到linux服务器中,如果已经安装过,可以忽略
yum install lrzsz

下面进入到docker挂载目录
cd /home/hep/jenkins_node
# 输入rz命令,然后会出现一个上传文件的弹窗,选择我们本地下载好的allure的安装包
rz
传输完成后,我们进入到容器内
cd /var/jenkins_home/
ls
可以看到我们挂载目录之后,就能看到我们刚才传输的这个allure压缩包了

解压allure安装包
unzip allure-2.21.0.zip
修改文件夹名称并赋予其最高权限
mv allure-2.21.0 allure
chmod -R 777 allure

配置allure和Python的环境变量
记得一行一个回车
cat >> /root/.bashrc << "EOF"
export PATH=/var/jenkins_home/allure/bin:$PATH
export PATH=/var/jenkins_home/python3/bin:$PATH
EOF
更新环境变量文件
source /root/.bashrc

验证环境变量配置成功与否
allure --version
python3 --version

配置JDK环境变量
cat >> /root/.bashrc<< "EOF"
export PATH=$JAVA_HOME/bin:$PATH
EOF
更新环境变量文件
source /root/.bashrc

验证JDK配置

配置Jenkins
截止目前,我们的docker环境已经搭建完成了,接下来我们来配置Jenkins,此时我们通过服务器的IP+8989端口即可访问我们的Jenkins,如果访问不了,请检查一下防火墙是否关闭以及是否开放8080端口。

然后我们根据提示去容器中查找密码
cat /var/jenkins_home/secrets/initialAdminPassword

复制上图中的密码到jenkins进行登录操作。
然后登录之后,进行新手操作,选择安装推荐的插件即可,然后进行漫长的等待…

安装好之后,创建管理员用户。然后默认实例配置,点击开始使用Jenkins就可以了。

安装Gitee插件


配置Gitee

链接名随便填,Jenkins内唯一不能重复

添加凭据:访问Gitee私人令牌获取地址

生成新的令牌

到这儿Gitee就算配置完成了。
新建项目
自定义项目

选择Gitee连接,配置源码管理仓库中的地址,Credentials中添加Gitee的账户密码


配置gitee webhook



复制密码,到gitee上:


URL这里要是能够外网访问的地址,否则会报错,不知道怎么弄的看链接:https://blog.youkuaiyun.com/liqing0013/article/details/80731757
配置好之后,点击保存。
然后在Jenkins中执行一次构建,可以看到我们的项目路径:

docker容器中进入这个项目地址:
cd /var/jenkins_home/workspace/ApiTestAuto
ls

然后就开始安装我们执行项目的依赖,如果安装失败则大概率是版本对应补上,手动安装就行了。
配置构建步骤

#!/bin/bash
cd /var/jenkins_home/workspace/ApiTestAuto2
python3 run.py
配置allure
安装allure插件

安装好之后去配置allure:


设置好之后,点击应用和保存。
项目里设置allure


注意上面的path要跟我们项目的路径是同一个。

效果

忙完了,大功告成!!!
6489

被折叠的 条评论
为什么被折叠?



