前言:
Jenkins是一个广泛使用的开源的自动化构建工具,它提供了持续集成和持续交付的支持,为开发人员提供了一个简单易用的平台,可以进行构建、测试、部署等操作。而在Docker环境下搭建Jenkins,可以更方便、更高效地使用Jenkins,能够快速部署、管理、升级Jenkins。
Docker作为目前作为业内最火的一个容器解决方案之一,通过将两者结合,从而实现服务的轻量化,并通过Docker管理Jenkins的资源。下面通过Docker部署Jenkins、Jenkins配置以及实例构建,讲述Jenkins的基本使用。
Docker下安装Jenkins
注:因为Jenkins容器里的用户是Jenkins,而主机用户不是Jenkins,就算是root也一样会报错:/var/jenkins_home/copy_reference_file.log: Permission denied,这个时候就需要在主机上面给主机地址赋予访问Jenkins容器的权限,Jenkins内部用的是uid 1000的user。
-privileged=true让容器具有root权限,便于进入容器
-p 9090:8080指定主机9090端口映射到Jenkins容器的8080端口(Jenkins的web访问端口)
-v /home/jenkins:/var/jenkins_home容器/var/jenkins_home路径挂载到宿主机/home/jenkins路径
启动Jenkins
密码地址
容器内:/var/jenkins_home/secrets/initialAdminPassword
宿主机:/home/jenkins/secrets/initialAdminPassword
进入插件下载页面,下载插件:
Jenkins插件下载
配置Jenkins
修改Jenkins时间
查看宿主机系统时间:
date -R
进入Jenkins容器查看时间:
docker exec -it -u root 容器id /bin/bash # 进入容器 date -R # 查看容器内时间 echo Asia/Shanghai >/etc/timezone # 容器内创建Asia时区文件 docker cp /usr/share/zoneinfo/Asia/Shanghai 容器id:/etc/localtime # 退出容器并复制宿主机中localtime到容器内
** 配置Python3环境**
Jenkins容器内并没有Python3环境,需要自己安装:
docker exec -it -u root 容器id /bin/bash #进入容器 cat /etc/issue #查看当前操作系统
注:Debian系统,这里使用apt-get代替yum。
apt-get update #更新apt-get #apt-get安装依赖包 apt-get -y install gcc automake autoconf libtool make apt-get -y install make* apt-get -y install zlib* apt-get -y install openssl libssl-dev apt-get install sudo # 安装Python3 cd /var/jenkins_home mkdir python3 cd python3 wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz # 获取python-3.6.8.tgz包 tar -xvf Pyhthon-3.6.8.tgz #解压 cd Python-3.6.8 # 切换到Python-3.6.8目录 #执行make和make install安装 ./configure --prefix=/var/jenkins_home/python3 --with-ssl make make install # 添加软连接 # 添加Python3软连接 ln -s /var/jenkins_home/python3/bin/python3.6 /usr/bin/python3 # 添加pip3软连接 ln -s /var/jenkins_home/python3/bin/pip3 /usr/bin/pip3 # 安装所需Python库 pip3 instal requests pytest-html pytest
** 配置HTML报告/Allure报告**
** HTML报告配置**
HTML Publisher插件下载,系统设置-->插件管理-可选插件,搜索:HTML Publisher。
Allure报告配置
下载allure:https://github.com/allure-framework/allure2/releases/download/2.14.0/allure-2.14.0.tgz。
docker cp /home/allure-2.14.0.tgz 容器id:/var/jenkins_home # 拷贝到容器内 cd /var/jenkins_home mkdir allure cd /var/jenkins_home/allure tar -xvf allure-2.14.0.tgz # 解压allure
安装Allure Jenkins Plugin插件,系统管理插件管理-可选插件,搜索Allure:
安装完成后,全局工具配置>Allure Commandline安装allure命令行工具,选择容器内路径。
简单使用-实例构建
构建job。
参数化构建
系统设置-->插件管理-可选插件,搜索Git Parameter.
安装完成后,job中勾选参数化构建过程。
注:这里是生成allure报告的配置,如果是要生成HTML报告则使用如下命令:
pytest test_demo.py --html=report/result.html --self-contained-html
** 构建后操作**
path地方写Aallure报告的地址,与执行shell地方生成的报告地址保持一致即可。
注:上述是生成allure报告配置,生成HTML配置如下:
注:HTML添加css样式。
安装Startup Trigger和Groovy插件
在Job配置页面构建触发器勾选Build when job nodes start
增加构建步骤Execute system Groovy script
配置成功
配置成功后,参数化构建:
控制台输出
Allure报告查看
** HTML报告查看**
作为一位过来人也是希望大家少走一些弯路,在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!
留【自动化测试】即可【自动化测试交流】:574737577(备注ccc)http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=pDT8nLpWvOrLUSQ-i3IcDot7xS6NZxse&authKey=h0VjM1VXghu6FK9i7hd7QLWkQ9tHpvG5IGJTul3SmVQq1g%2F4ZezdQEc4tHcIH%2FqM&noverify=0&group_code=574737577
版权归原作者 自由家 所有, 如有侵权,请联系我们删除。