基于docker搭建Jenkins+git+python+allure
实现方式
一、创建jenkins容器
1、拉取jenkins镜像
docker pull jenkins/jenkins:latest

2、创建本地目录,后续挂载jenkins的工作目录
mkdir /home/jenkins_home
3、创建jenkins容器
docker run -itd --name=myjenkins -p 1111:8080 -u=root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /home/jenkins_home:/var/jenkins_home jenkins/jenkins:latest
4、访问jenkins:当前服务器ip:jenkin的映射端口

jenkins入口页显示密码文件为:/var/jenkins_home/secrets/initialAdminPassword,/var/jenkins_home目录我们在宿主机上做了映射,因此可直接在服务器上的/home/jenkins_home/secrets/initialAdminPassword去查看密码


建议先不安装jenkins的默认插件,后续有需要自己安装


设置jenkins的用户


二、本次项目需要的插件安装
git、allure



安装成功

三、创建流水线,关联git仓库地址


Source Code Management:选择Git,首次需要添加git账号

输入git账号密码,添加

输入要拉取的git仓库地址,选择刚刚添加的账号


流水线创建完成之后,可构建一次进行验证,拉取的git代码到容器中的/var/jenkins_home/workspace/,或者容器挂载的宿主机目录下去查看


四、使用Dockfile创建python镜像
1、服务器上创建文件my_lib.txt(文件名称自定义),存放python要安装的依赖包内容
Faker==13.3.2
PyMySQL==0.9.3
PyYAML==5.3
adbutils==0.7.3
allure-pytest==2.8.12
ddt==1.2.2
httprunner==3.0.12
mock==4.0.1
openpyxl==3.0.2
pytest==5.4.2
pytest-html==2.1.1
jsonpath==0.82
requests==2.22.0
requests-toolbelt==0.9.1
2、创建Dockerfile文件
FROM python:3.7.15
MAINTAINER Tester
WORKDIR /app
ADD my_lib.txt /app
RUN pip install -r my_lib.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
CMD ["python","pytest_run.py"]

3、执行Dockerfile
docker build -t python:3.7.15 .
出现success表示成功

五、jenkins项目配置:构建执行shell代码,生成python容器
docker run --rm -w=$WORKSPACE --volumes-from=jenkins容器名称 python镜像名称:TAG
docker run --rm -w=$WORKSPACE --volumes-from=myjenkins python:3.7.15
1、找到jenkins上刚刚创建的流水线,configure,选择用shell脚本来构建



六、配置allure报告
tips:Jenkins上需要有jdk环境,才能生成allure报告
Jenkins:Manage Jenkins的Global Tool Configuration,配置jdk和allure



在项目的configure中,Post-build Actions选择Allure Report

七、构建流水线
构建成功,可点击allure报告查看结果


基于docker搭建Jenkins+git+python+allure的更多相关文章
- 基于Docker 搭建 Jenkins
⒈下载镜像 要使用最新的LTS: docker pull jenkins/jenkins:lts 要使用最新的每周 docker pull jenkins/jenkins ⒉运行 docker run ...
- 基于docker搭建jenkins
一.概述 Jenkins 的前身是 Hudson 是一个可扩展的持续集成引擎.Jenkins 是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.Jenkins 支持各 ...
- 基于docker搭建Jenkins+Gitlab+Harbor+Rancher架构实现CI/CD操作
一.各个组件的功能描述: Docker 是一个开源的应用容器引擎. Jenkis 是一个开源自动化服务器. (1).负责监控gitlab代码.gitlab中配置文件的变动: (2).负责执行镜像文件的 ...
- 基于docker搭建Jenkins+Gitlab+Harbor+Rancher架构实现CI/CD操作(续)---Harbor的安装
前期安装文档:https://www.cnblogs.com/lq-93/p/11828626.html Harbor的作用: 开发提交代码至gitlab容器中,Jenkins拉取代码构建镜像 ...
- 基于docker搭建Jenkins+Gitlab+Harbor+Rancher架构实现CI/CD操作(续)
说明:前期的安装,请转向https://www.cnblogs.com/lq-93/p/11824039.html (4).查看gitlab镜像是否启动成功 docker inspect 容器id ...
- Docker搭建Jenkins+Maven/Gradle——代码自动化运维部署平台(二)
一.简介 1.Jenkins 概述: Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台.这是一个免费的源代码,可以处理任何类型的构建或持续集成.集成Jenkins ...
- Jenkins +git +python 进行持续集成进行接口测试(接口测试jenkins持续集成篇)
使用jenkins+git+python脚本进行持续集成的接口测试,在jenkins平台,利用插件等,把管理代码的git仓库的代码更新下来进行持续接口测试,python进行开发测试脚本,git进行远程 ...
- 基于docker搭建开源扫描器——伏羲
基于docker搭建开源扫描器——伏羲 1.简介 项目地址 伏羲是一款开源的安全检测工具,适用于中小型企业对企业内部进行安全检测和资产统计. 功能一览: 基于插件的漏洞扫描功能(类似于巡风) 漏洞管理 ...
- [转帖]基于docker 搭建Prometheus+Grafana
基于docker 搭建Prometheus+Grafana https://www.cnblogs.com/xiao987334176/p/9930517.html need good study 一 ...
- 基于Docker搭建大数据集群(六)Hive搭建
基于Docker搭建大数据集群(六)Hive搭建 前言 之前搭建的都是1.x版本,这次搭建的是hive3.1.2版本的..还是有一点细节不一样的 Hive现在解析引擎可以选择spark,我是用spar ...
随机推荐
- ptyhon基础课程_3
14 综上练习题 评分规则: A:>=90 B:>=80 C:>=70 D:其他 用户输入成绩,根据成绩显示不同的级别 score = input ("请输入您的成绩:&q ...
- ASP.NET中maxRequestLength和maxAllowedContentLength的区别;上传大文件设置IIS7文件上传的最大大小
https://blog.csdn.net/qq_23663693/article/details/89920039 maxRequestLength表示ASP支持的最大请求大小,而maxAllowe ...
- node 基础
使用 vscore 写 node 的配置文件 { "version": "0.2.0", "configurations": [ { &qu ...
- 230222 Radiated Immunity Pre-compliance Test
Hello everyone, welcome to Mach1 Design EMC channel. Last time we talked about how to set up a radia ...
- 提交from表单,method与浏览器请求显示不一致
<from method="post" action ="/login_check"> 用户名:<input type="text& ...
- Outlook网页版怎么设置自动回复?节假日怎么设置邮件自动回复?
在页面顶部,选择 设置> 查看所有 Outlook 设置 选择邮件>撰写和答复. 在答复或全部答复下,选择当您从阅读窗格中答复时的默认响应: 答复: 您的答复仅发送给发件人. 全部答复: ...
- MySQL 5.7升级8.0过程(详解)
记一次MySQL 5.7升级8.0的详细过程,聊聊我的思路,希望可以帮助大家. 以一个例子为切入点 一.升级背景 为什么要升级到MySQL8.0?大概多久进行一次? 大家可以参考下图记录的各个版本的发 ...
- Jmeter性能测试入门到项目实战03
Jmeter性能测试入门到项目实战03 P35 项目业务介绍 1,之前已经对Jmeter所有的知识点做了一个介绍,主要的业务模式是币币交易,就像b2c 2, 3, 4,主要是把登陆和交易这一块做一个并 ...
- dart extends 覆盖规则
1,不覆写super的变量,child会自动继承super的变量.即使是在child里给super赋值,child里也是可以访问到的,可能是因为引用的关系. 2,只要覆写了super的变量,只给sup ...
- liunx部署flask项目
如何在linux上部署flask项目 Python3.7 + virtualenv + uwsgi + git + mysql-5.6.45 + nginx 源码编译安装所需要的环境 yum inst ...