基于docker搭建jenkins+python3+pytest+allure+gitlab接口自动化测试CI环境(上)

一、安装jenkins容器

1、 新建挂载目录

#在宿主机创建一个目录,用于挂载目录
mkdir -p /var/jenkins_node
#修改权限为777
chmod 777 /var/jenkins_node

2、下载镜像(这里下载了纯净的jenkins最新稳定版本镜像)

docker pull jenkins/jenkins:lts

3、 创建启动容器

docker run -id --name=jenkins1 -p 8080:8080 -v

/var/jenkins_node:/var/jenkins_home --restart=always jenkins/jenkins:lts

(注意:宿主机端口不能重复,只要没有同时启动就行,不能被占用)

4、 查看容器是否启动

docker ps

基于docker搭建jenkins+python3+pytest+allure+gitlab接口自动化测试CI环境(上)_第1张图片

5、 访问虚拟机ip:8080,可以进入jenkins页面,到提示的文件获取管理员密码

cat /var/jenkins_node/screts/initialAdminPassword(需要先进入容器)

6、复制到jenkins页面,进入,并保存密码

7、到安装插件页面,默认就行,安装推荐的插件,等待插件安装完成,如果安装失败可以下一步,后面还可以离线安装或者搜索安装单个插件

8、 创建管理员用户密码

9、实例配置,jenkins URL 是当前虚拟机ip:映射端口号。这里有个坑,如果点保存并完成,以后发邮件都是以这个ip去发的,动态ip可能会变最好还是设置成静态ip,如果已经设置好了,点保存并完成

二、 容器内安装python

1、 前置准备

进入容器:docker exec -it -uroot jenkins1 /bin/bash
获取最新的软件包:yum updata
安装包:
    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
    yum install gcc

2、安装python3环境

 #1.进入jenkins_home目录
cd /var/jenkins_home/
#2.创建python存放路径
mkdir python3
cd python3/
#3.下载python3 
wget  http://npm.taobao.org/mirrors/python/3.7.9/Python-3.7.9.tgz
#4.解压文件目录
tar -zxvf Python-3.7.9.tgz
#5.查看解压后的文件
ls
#6.更改解压后文件包名(可选项)
mv Python-3.7.9 python3.7
解决没有wget命令:使用 yum -y install wget,下载wget命令依赖

3、make编译安装

进入python3.7目录下
./configure --prefix=/var/jenkins_home/python3 --with-ssl
make
make install

4、添加python3和pip3软连接

添加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和pip3都不会报错 

搞定python3环境后,下面安装需要的插件,可以根据项目需要自由选择安装

三、 容器内安装pytest

1、安装pytest
    pip3 install pytest
2、寻找pytest安装地址(一定要找对,否则软连接无效)
    找到带bin的路径:/var/jenkins_home/python3/bin
    ls进入,看是否有pytest,如果有,则pytest安装目录就在这个目录下
    所以配置的安装路径后缀一定是bin/pytest。这里有坑,pytest安装目录一定要找对,否则即使设置    软连接,运行pytest会提示pytest找不到,只能通过python3 -m pytest运行
3、添加软连接
     ln -s /var/jenkins_home/python3/bin/pytest /usr/bin/pytest
4、验证下,在任意目录下输入pytest执行,不会报错
基于docker搭建jenkins+python3+pytest+allure+gitlab接口自动化测试CI环境(上)_第2张图片

四、 容器内安装allure

a) 将本地已经有的allure文件上传到宿主机(本地已经解压完成)

b) 从宿主机copy到jenkins容器内:docker cp /data/allure-2.18.1/ jenkins1:/home/data/

c) 以管理员身份进入容器内:docker exec -it -uroot jenkins1 /bin/bash

d) 为文件夹改名:mv /home/data/allure-2.18.1/ /home/data/allure

e) 赋予文件夹最高的权限:chmod -R 777 /home/data//allure/

f) 配置allure环境变量

 #一行命令一个回车,复制粘贴直接用就行
cat >> /root/.bashrc << "EOF" 
export PATH=/home/data/allure/bin:$PATH 
export PATH=/var/jenkins_home/python3/bin:$PATH 
EOF

g) 更新环境变量配置文件:source /root/.bashrc

h) 验证环境变量是否生效

allure --version
python3 --version

i) 安装allure-pytest:pip3 install allure-pytest(有个坑,上一步输入allure已经不报错了,但是构建时提示import allure找不到allure,安装这个库后可以解决这个问题)

五、 容器内安装requests

进入jenkins容器,pip3 install requests

六、 容器内安装yaml

pip3 install PyYAML

七、配置JDK环境变量

cat >> /root/.bashrc<< "EOF" 
export PATH=$JAVA_HOME/bin:$PATH 
EOF

你可能感兴趣的:(持续集成jenkins,jenkins,容器,docker,自动化,python)