【一:docker 搭建 jenkins + allure + jdk + python + pytest + gitee +持续集成CI持续部署CD(使用轻量应用服务器搭建)】
目录
添加阿里的软件源,以后每个软件下载都会优先从阿里的软件源下载
步骤7:浏览器输入http://IP:8070访问jenkins首页(IP是自己腾讯云服务器公网的IP)
前言
前提条件
Docker要求CentOS版本高于3.10,验证你的服务器是否支持docker,或者你直接去腾讯云上购买一台轻量应用服务器 tip:双十一购买更加便宜
轻量应用服务器

一:安装docker
如果你购买的是一轻量应用服务器,在选择安装镜像的时候是选择是如下图所示,可以不安装docker

否则需要安装docker,安装docker如下图所示
检查并清除系统残余项,并安装docker依赖环境
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
添加阿里的软件源,以后每个软件下载都会优先从阿里的软件源下载
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装下载Docker依赖工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
更新yum缓存(为了保证能更新和下载所需要的服务)
sudo yum makecache
安装docker(ce-社区版)
sudo yum -y install docker-ce
启动docker
sudo systemctl start docker
测试docker是否可以启动
docker info

设置开机自启(可以根据自己习惯而定)
sudo systemctl enable docker
查看docker版本
docker -v
。。。。。。。。。由于我安装的镜像自动docker容器,你可以直接省略前面安装的步骤,直接测试docker和查看对应版本号
二、下载Jenkins镜像
步骤1:查询Jenkins版本:
docker search jenkins
步骤2:拉取jenkins镜像
docker pull jenkins/jenkins:lts
步骤3:新建jenkins的工作目录:
mkdir /home/jenkins(创建目录如果没有权限就su root切换root账号)
步骤4:查看目录归属的ID命令 并给ID用户添加操作权限
ls -nd /home/jenkins
chmod 777 /home/jenkins
cd /home/jenkins
步骤5:运行容器
docker run -d -p 8070:8080 --name myjenkins -v /home/jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins 复制红色部分登录Jenkins需要
1、-d 后台运行镜像
2、-p 8070:8080 Jenkins容器的端口8080,8070是主机上面的端口。外网访问8070端口然后映射到jenkins的8080端口
3、-v /home/jenkins:/var/jenkins_home 。v参数中,冒号":"前面的目录是宿主机目录,后面的目录是容器内目录。
4、-v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置。
5、-name jenkins 给容器起一个别名
步骤6:查看Jenkins镜像是否启动成功
docker ps
步骤7:浏览器输入http://IP:8070访问jenkins首页(IP是自己腾讯云服务器公网的IP)

注意,此时你的云服务器的防火墙规则需要放行8070端口

之后再次进行在浏览器访问
密码在
vi /var/jenkins/secrets/initialAdminPassword




直接点击保存
点击“保存并完成”出现下图表示jenkins已经配置完成。点击[开始使用 jenkins]登录。
ps:如果你的Jenkins打开时为英文,配置请参考文章:https://blog.csdn.net/songyun333/article/details/123830368
此时你的Jenkins安装成功了。。。。
三、容器内安装python3
1、已root权限进入Jenkins容器
docker exec -it -uroot myjenkins bash
2、前置安装一些软件包
apt-get update # 获取最新的软件包
apt-get upgrade # 升级已安装的软件包
# 提前安装,以便接下来的配置操作
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
- 注意:
如果在安装make* 报错的话,不需要管他,继续往下安装
3、安装python3.7
1)下载python
# 进入jenkins的安装目录
cd /var/jenkins_home
# 新建一个python3目录
mkdir python3
cd python3
#下载python安装包
wget http://npm.taobao.org/mirrors/python/3.7.9/Python-3.7.9.tgz
#解压
tar -zxvf Python-3.7.9.tgz
mv Python-3.7.9 py3.7
cd py3.7
2) 进入到py3.7,即在路径 /var/jenkins_home/python3/py3.8下执行python3 的安装
./configure --prefix=/var/jenkins_home/python3 --with-ssl # 指定安装的目录
make # 编译
make install # 安装
在执行make install 命令后报错了,报错信息是需要配置python3环境变量, vi /etc/profile
注意python的安装目录是:/var/jenkins_home/python3,需要配置到环境变量文件(/etc/profile)中,否则在安装时会报错
如果报错,参考这篇文章:
https://blog.csdn.net/qq_37405087/article/details/116162111
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
5、检查配合的环境
在路径 /var/jenkins_home/python3/bin 或 /usr/bin/ 输入 python3 -V 和 pip3 -V
四、安装allure
官网下载安装包
下面打开一个新的服务器页面,退出到容器的外面,是用rz命令上传到home/Jenkins/下
# 使用linux中的rz或者sz命令,可以讲电脑中的文件上传到linux服务器中,如果已经安装过,可以忽略
yum install lrzsz
进入docker挂载的目录
cd /home//jenkins
# 输入rz命令,然后会出现一个上传文件的弹窗,选择我们本地安装好的allure的安装包
rz
上传成功后,进入容器内部
cd /var/jenkins_home/
ls
解压allrue
unzip allure-2.17.3.zip
给文件赋予权限
mv allure-2.17.3 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
五、Jenkins的配置
gitee的配置

此处无的原因是应为我已经安装了gitee
gitee系统配置

连接名随便起,Jenkins唯一不重复





把令牌粘贴到私人令牌里面

选择刚创建的令牌

新建项目
自定义一个项目,然后构建一个自由风格的软件项目
配置gitee连配
url里面输入需要拉取的代码的url
置源码管理中仓库的地址credentials中添加输入码云账号密码

上面的credentiaks设置界面

配置gitee webhook


然后打开我们的gitee的仓库,到管理中,点击webhooks

配置好后点击保存

此时我们点击构建,这时可以在控制台页面看到我们项目的路径

六、配置项目的依赖包
进入容器这个项目的地址
cd /var/jenkins_home/workspace/MyPytest_Farme
ls

安装这个项目的依赖包
pip3 install -r requirements.txt
如果不知道如何生成requirements.txt,参考下面文件(我是已经在项目里面生成过的)
如果没有requirements.txt这个文件,请在pycharm导出,输入如下对应的命令
在pycharm的terminal中输入:
导出为requirements文件
pip freeze > requirements.txt
导出requirements文件
pip install -r requirements.txt
==========================================================================
如果安装中报错,肯需要升级下setuptools(鄙人在这遇到无法安装jsonpath)
[root@edb ~]$ pip3 install --upgrade setuptools
[root@edb ~]$ pip3 install jsonpath
配置执行脚本
构建好后,再次进入Jenkins,配置shell,配置内容如下


#!/bin/bash
cd /var/jenkins_home/workspace/MyPytest_Farme
python3 all.py
配置allure
全局里面配置allure


设置好后点击保存
在项目里面设置allure

需要注意的是,上面是一个临时生成的目录,下面是报告的目录
点击保存之后,构建项目


魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐








所有评论(0)