使用Docker+jenkins+python3环境搭建超详细教程

前言:

  自动化写好后需要在服务器上每日定时运行遇到,这样的一个问题,Jenkins容器是在docker中安装的 ,然后从git上拉取代码 发现代码在jenkins容器的目录当中,运行的时候提示没有安装python环境还第三方库。

解决方法有3种:

  第一种:启动jenkins容器时 将容器的目录挂载到宿主机目录上去执行(方法不能实现)Pass

  第二种:在jenkins上创建本地节点,将代码拉取到本地 然后去运行本地项目(在本机上使用比较方便,但是局限性比较小)

  第三种:重新封装jenkins镜像,在jenkins镜像中安装python3的环境 在容器中执行项目(步骤麻烦,但后续永久使用)

第一种方法和第二种方法前提都需要在服务器中安装docker和jenkins镜像

一、安装docker

  安装dockerhttps://www.runoob.com/docker/docker-tutorial.html

二、安装jenkisn镜像

1.查找docker上的镜像
    docker search jenkins

2.下载自己所需要的镜像
    docker pull jenkinsci/blueocean

3.查看是否下载成功
    docker images

4.启动下载的镜像
  docker run -d -p 10240:8080 -p 10241:50000 -v /jenkins_autotest/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime  -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --name jenkint_test jenkinsci/blueocean

#说明:docker run    运行
  -d:后台运行容器  -p:指定容器的端口映射 -p 10240:8080 表示将容器的8080端口映射到宿主机的10240端口上 ,映射多个端口使用 -p 8082:8080  -p 8083:8081
   -v:挂载宿主机目录和 docker容器中的目录  /Users/songpeilun/jenkins_home 本地宿主机绝对目录;/var/jenkins_home    容器目录(将容器目录挂载到本地)
   -v:/etc/localtime:/etc/localtime 本地时间和容器时间同步
   -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai     设置容器时间为上海时间(不然容器时间和本地时间相差8小时)
   --name jenkint_test  设置容器的名称
   jenkinsci/blueocean        选择镜像名称启动容器(默认镜像后面会加latest  如果拉取自己创建的镜像后面要加自己的版本号  jenkinsci/blueocean:版本号TAG )

   ⚠️ 容器目录挂载本地目录时 一定要给本地文件夹赋予权限  chmod 777 jenkins_home

输入docker images查看jenkins镜像是否安装成功

docker images

查看容器是否运行

docker ps

可以看出docker中已经有运行的容器jenkins

这样就说明 已经安装好jenkins 现在就可以启动jenkins了

三、启动jenkins

浏览器输入 服务器的ip+端口号 http://47.99.98.250:10240/ 如果无法访问请关闭系统防火墙

查看密码的方式有2种,第一种是在服务器的容器中查看,第二种是在映射本地查看(前提是你映射了本地目录)

好了,到这里就已经安装好jenkins了

容器中查看密码:cat /var/jenkins_home/secrets/initialAdminPassword
映射本地目录:cat /Users/songpeilun/jenkins_home/secrets/initialAdminPassword
#/Users/songpeilun/jenkins_home  本地映射目录地址

三、方法2:新建本地节点  

  说一下方法2的具体逻辑,主要是新建jenkins的本地节点 利用新的节点将git上的代码拉取到本地(宿主机)上去执行代码

  该方法主要适用于 本地已经有一套python3的一套环境,可以直接运行自动化 利用本地持续集成实现每日自动化报告(缺点:因为利用的是本地节点 利用宿主机地址当作ip 所以每次都需要开启电脑和jenkins地址 且外网不能访问 局限性小)

 第一步:在jenkins当中安装SSH Agent插件

  安装 ssh Agent插件 系统设置—插件管理—可选插件 然后输入ssh agent 搜索

 第二步新增节点

 系统设置—节点管理—新建节点(节点名称不能重复)

说明:

  节点名称:名称尽量用英文和字符不要用汉字(创建项目的时候选择节点会有警告!)

  节点描述:可填写可不填写

  执行器数量:节点同时运行的数量

  远程工作目录:本机的工作目录(/Users/songpeilun/jenkins)这需要有root权限的用户对此文件所有权限

  标签:可填写可不填写

  用法:尽可能对使用这个节点

  启动方式:Launch agents via SSH

  主机:本机的网络ip地址(网络-网络设置-IP)

  Credentials:选择已添加的本机账号密码

  Host Key Verification Strategy:Non verifying Veriflication Strategy

  可用性:尽量保持代理在线

  节点属性--git:git的安装路径

 然后启动节点 下面就表示启动成功,然后查看本地宿主机 目录文件夹夹是否有节点的文件

三、方法3:容器中安装python3环境

  说一下方法3的具体逻辑,主要是在容器中运行代码,git将代码默认拉取到容器当中 不需要映射直接在容器中执行代码(好处:不占用服务器的资源大小,随时启动;不需要本地启动服务 直接利用服务器地址就行 坏处:安装麻烦一点😈 )

  第一步:需要进入jenkins容器当中  

docker exec -itu root 容器id /bin/sh

 下面有2种方法安装 python3

  1.weget 安装(不推荐,基本和现安装的方法差不多,先要安装一些依赖包,如 gcc 等)

  2.apk add 安装(此版本是alpine :apk add,能够快速安装完成)

 最后注意系统版本问题:

  如果是 centos 那即是 yum ; 如果是 ubuntu 那即是 apt-get ;如果是 alpine 那即是 apk

  第二步:apk进行安装python3

cd /etc/apk/
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main/" > repositories
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community/" >> repositories

  更新apk源 这样下载的比较快

apk update

  第三步:使用apk add 安装python3环境

apk add python3

  第四步:更新pip3

pip3 install --upgrade pip

验证python环境
python -V
Pip3 -V

 上面安装成功后 就可以安装第三方库的插件了,已经完成一半了

 插件安装 根据自己项目需要安装 下面就以我的项目为列

  第五步:安装python 三方库

  首先创建requirements.txt 文件  

  pip freeze > requirements.txt

  pip install -r requirements.txt

  然后使用 vi requirements.txt 打开文件进行编辑

base64-test0926 ==1.0.0
        PyMySQL==1.0.2
        pytest==6.2.3
        python-jenkins==1.7.0
        PyYAML==5.4.1
        redis==3.5.3
        requests==2.25.1
        SQLAlchemy==1.4.10
        urllib3==1.26.4
        wheel==0.36.2
        allure-pytest==2.8.40
        allure-python-commons==2.8.40

最后2个需要将Allure报告配置完成后在进行安装,不然会报错

⚠️ 如果安装出错 不要着急 慢慢找出原因 我之前出错后 找了半天原因 是因为缺少greenlet 插件 (后面在为大家 提供方法)

  如果没有问题 到这里就已经安装成功了,可以将自己的代码cp 到容器当中 测试一下。没有问题后就可以打包镜像了

本地文件拷贝到容器xx目录当中

docker cp /Users/songpeilun/python_data/allure-2.13.0.zip jenkint_test:/xx目录

  我这里使用了Allure报告 所以要安装

  第六步:安装allure报告

  allure是一个解压包,这里为大家提供一个,下载后拷贝到容器当中 解压

  链接: https://pan.baidu.com/s/1JbBXOfA0j6saZh7H8RMipw 密码: qfnv

#容器中解压文件
unzip allure-2.13.0.zip

#配置环境变量
vi /etc/profile
PATH后面添加 :$PATH:/allure-2.13.0/bin(allure的全路径)
source /etc/profile  保存生效

  第七步:验证allure

allure --version

四、打包/上传镜像

  关注 持续更新...

五、配置jenkins环境

到此这篇关于使用Docker+jenkins+python3环境搭建超详细教程的文章就介绍到这了,更多相关Docker+jenkins+python3环境内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 从零搭建docker+jenkins+node.js自动化部署环境的方法

    本次案例基于CentOS 7系统 适合有一定docker使用经验的人阅读 适合有一定linux命令使用经验的人阅读 1.docker部分 1.1.docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口 1.2.docker架构 简单的说,docker就是一个轻量级的linux系统.Docker 容器通过 Docker 镜像来创建.

  • 详解Docker下搭建Jenkins构建环境

    首先需要搭建好docker环境的linux系统,这个教程多如牛毛,在此不再赘述. 然后编写一个dockerfile来生成一个镜像,dockerfile其实就是一系列命令的集合,有点像windows的批处理文件, 搭建Jenkins构建环境需要安装jdk.maven.tomcat.jenkins,另外还安装了GIT,用来构建GIT来源的代码,内容如下: FROM centos:7 # author info MAINTAINER xulijian 514045152@qq.com # instal

  • Docker环境搭建Jenkins在构建任务时控制台日志出现中文乱码的问题

    一.问题描述: 在Linux环境Centos操作系统下,通过Docker下载Jenkins镜像后创建了容器,并且通过服务器IP+端口访问Jenkins地址,进行相关的配置,然后创建任务job来构建跑java+selenium自动化测试脚本,目前构建Success,唯一不足之处是打印的日志出现就了乱码,如下图: (备注:执行机就是jenkins本身,同一台机器) 二.排查Jenkins设置 Jenkins系统设置查看全局属性中语言部分 2.Jenkins详细信息(浏览器Jenkins地址后面加上/

  • Windows 下python3.8环境安装教程图文详解

    python3.8新功能相关文章 Python 3.8 新功能大揭秘[新手必学] Python 3.8 新功能来一波(大部分人都不知道) 第一步 下载python3.8,官网下载较慢,我已经下载好了 64位 32位 第二步 双击安装,记得勾选红框框! 不勾选的话,安装完需要自己配置环境变量 等待即可 第三步 完成安装,检验是否安装成功 ctrl+R打开运行,输入cmd打开命令行 命令行中运行输入python测试是否运行(若电脑中同时有python2和python3则输入python3来指定运行的

  • Python3和PyCharm安装与环境配置【图文教程】

    本文讲述了Python3和PyCharm安装与环境配置.分享给大家供大家参考,具体如下: 一.安装Python3 1.进入官网:www.python.org 2.下载(可以选择你自己的电脑系统版本,我这里是win7 64位) 3.然后点击XXX.exe傻瓜式安装 4.配置环境变量 [右键计算机]-->[属性]-->[高级系统设置]-->[高级]-->[环境变量]-->[在系统变量内容框中找到 变量名为Path 的一行,双击]/[或者在用户变量里添加也可以] --> [P

  • 使用Docker+jenkins+python3环境搭建超详细教程

    前言: 自动化写好后需要在服务器上每日定时运行遇到,这样的一个问题,Jenkins容器是在docker中安装的 ,然后从git上拉取代码 发现代码在jenkins容器的目录当中,运行的时候提示没有安装python环境还第三方库. 解决方法有3种: 第一种:启动jenkins容器时 将容器的目录挂载到宿主机目录上去执行(方法不能实现)Pass 第二种:在jenkins上创建本地节点,将代码拉取到本地 然后去运行本地项目(在本机上使用比较方便,但是局限性比较小) 第三种:重新封装jenkins镜像,

  • 搭建PhpStorm+PhpStudy开发环境的超详细教程

    刚开始接触PHP开发,搭建开发环境是第一步,网上下载PhpStorm和PhpStudy软件,怎样安装和激活就不详细说了,我们重点来看一看怎样搭配这两个开发环境. 前提:现在假设你已经安装完PhpStorm和PhpStudy软件. 我的PhpStorm使用的是默认安装目录,这个没什么疑问的,PhpStudy软件我选择解压的目录是G:\Program Files\ . 在PhpStudy软件的解压目录下的www文件夹就是我们的网站根目录. 现在我们使用PhpStorm新建一个新工程. 第一步:打开P

  • MyBatis-Plus集成Druid环境搭建的详细教程

    一.简介 Mybatis-Plus是一款 MyBatis 动态 sql 自动注入 crud 简化 增 删 改 查 操作中间件.启动加载 XML 配置时注入 mybatis 单表 动态 SQL 操作 ,为简化开发工作.提高生产率而生.Mybatis-Plus 启动注入非拦截实现.性能更优. 1.1.原理 1.2.特性 无侵入:Mybatis-Plus 在 Mybatis 的基础上进行扩展,只做增强不做改变,引入 Mybatis-Plus 不会对您现有的 Mybatis 构架产生任何影响,而且 MP

  • pcl1.8.0+vs2013环境配置超详细教程

    目录 准备 安装 配置 最近开始学习pcl,经过几天的捣鼓终于将pcl1.8.0和vs2013的环境搭建起来. 准备 pcl版本:PCL-1.8.0-AllInOne-msvc2013-win64 vs版本:vs2013 下载地址链接:链接: https://pan.baidu.com/s/1L6trLERkzylkBUjTw94RNQ?pwd=ep39   提取码: ep39 因为我的电脑是64位的,所以只有64位版本. 安装 vs2013下载解压默认安装就好了. PCL整个安装过程需要注意以

  • DVWA下载、安装、使用(漏洞测试环境搭建)的详细教程

    DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程. 一共有十个模块: 暴力(破解).命令行注入.跨站请求伪造.文件包含.文件上传.不安全的验证码.SQL注入.SQL盲注.弱会话ID.XSS漏洞(DOM型跨站脚本.反射型跨站脚本. 存储型跨站脚本) 环境搭建 由于是本地搭建真实web漏洞网站,我就以Win

  • 史上最贴心的 VS code C++ 环境配置超详细教程

    前言 秦朝打败天下无敌手的室友法苏ovo前几天参加了CCSP,裸考的他遇见了Linux下的VsCode,然后搭C++环境搭了很久. 于是,他就学会了如何配置vscode的C++环境,然后,我也顺路学会了.真好. 一.VS code 前言 VS code作为一款当下非常受欢迎的一款IDE,关于它的优势这里就不赘述了,但想必用过它的人都应该体验过配环境的绝望,尤其是C++环境的配置. 有一说一,VS code 上面C++调试起来是真的挺方便的,真的很棒. 这里给大家介绍两种C++环境配置方法: 纯手

  • Idea 搭建Spring源码环境的超详细教程

    本篇主要讲解如何使用Ideal 搭建Spring的源码环境,想必大家都会多多少少去看过Spring的部分源码,一般我们都是直接点进某个Spring类 然后Idea上面去下载 ,但是确实比较麻烦,而且不能添加自己对源码的注释 理解 ,本篇就来解决这个问题,手把手使用Idea 搭建Spring framework ,并且直接在Spring framework项目中添加我们自己的module 来验证环境是否正确. 本过程会比较耗时 而且容易出错 慢慢来吧. 1. clone spring-framew

  • VMware中安装CentOS7(设置静态IP地址)并通过docker容器安装mySql数据库(超详细教程)

    一位读大二的学弟问我怎么安装配置这些,我简单的整了一个教程,这里记录一下,并分享给需要的朋 安装过程学习使用足够,实际工作中有些繁琐的配置略过了! 打开VM虚拟机,菜单栏[文件]-->选择[新建虚拟机],选择"o自定义(高级)"-->[下一步] 默认一直点[下一步]到选择安装盘的位置,选择自己已经下载好的官方DVD镜像文件(不要整别的镜像,避免走不必要 的坑) [下一步]设置虚拟机名称(取一个合适的名称,设置合适的路径) 处理器设置默认,安装好虚拟centos后可以根据情况

  • Deepin20安装开发环境的超详细教程

    Deepin安装开发环境 系统环境配置 挂载分区 1.挂载分区(需要先卸载分区): deepin:sudo mount -t ext4 /dev/sda3 /media/zgren -o ro 此处使用deepin官网用的这个 sudo mount /dev/sda3 /media/aborn/data 2.查询uuid: sudo blkid /dev/sda3 3.修改分区文件,防止重启后挂载无效 vim /etc/fstab 添加如下内容: UUID=查询到的UUID /media/abo

  • Windows下PyCharm配置Anaconda环境(超详细教程)

    首先来明确一下Python.PyCharm和Anaconda的关系 1.Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. 虽然Python3.5自带了一个解释器IDLE用来执行.py脚本,但是却不利于我们书写调试大量的代码.常见的是用Notepade++写完脚本,再用idle来执行,但却不便于调试.这时候就出现了PyCharm等IDE,来帮助我们调试开发. 2.PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调

随机推荐