docker+playwright+python+Jenkins跑web自动化

# Docker部署Jenkins以及安装Playwright跑Web自动化的那些坑

在使用Docker部署Jenkins以及安装Playwright进行Web自动化测试的过程中,我遇到了不少问题。这里分享一下我的经验和解决方法,希望能帮助到同样在探索这条技术路线的朋友们。

## 一、云主机上部署Docker的坑

### 1.1 默认安装Docker的问题
在云主机上部署Docker时,我发现默认安装的Docker版本可能会带来各种问题。例如,我最初安装的Docker版本较旧,导致后续操作中出现了不少奇怪的错误。(tips:由于我是在云主机上部署了一个docker,在这一步的时候就遇到很多的坑,如下:

云主机版本:)

默认去 install 安装docker,安装的docker版本是:

然后遇到各种奇奇怪怪的问题,这里就不在赘述。安装最新的docker,假如你之前存在一些镜像容器,可以按照图下去备份:

### 1.2 升级Docker的建议
如果之前已经安装了Docker,可以按照以下步骤进行升级:
- **备份现有镜像和容器**:在升级之前,建议备份现有的镜像和容器,以防止数据丢失。
- **升级Docker**:可以直接在现有基础上升级Docker,无需卸载。升级后的Docker版本应为最新稳定版。

### 1.3 推荐的系统和联网环境
根据我的经验,CentOS 7维护的Docker版本较旧,建议在OpenEuler或BCLinux系统上部署Docker。联网环境也很重要,联网可以避免很多麻烦。如果需要最新Docker版本,可以访问以下链接:[Docker Packages for CentOS](https://download.docker.com/linux/centos/7/x86_64/stable/Packages/)

## 二、拉取和使用Playwright镜像

### 2.1 官方文档的坑
根据Playwright官方文档安装的镜像可能存在一些问题。我建议使用以下特定版本的Playwright镜像:mcr.microsoft.com/playwright/python:v1.57.0-noble

目前我是根据官方文档安装的playwright镜像,但这个版本存在一些问题,建议使用如下图圈出来的红色部分的镜像:


### 2.2 创建并启动Playwright容器
以下是创建并启动Playwright容器的命令:
```bash
docker run -it --rm \
  --pids-limit=-1 \
  --cpus=4 \
  --memory=4g \
  --env PIP_NO_CACHE_DIR=1 \
  --env PIP_DEFAULT_TIMEOUT=120 \
  -v /root/code:/root \
  mcr.microsoft.com/playwright/python:v1.57.0-noble \
  sh -c "pip install --no-cache-dir --progress-bar off --retries 5 --timeout 120 playwright==1.57.0 ddddocr loguru -i https://mirrors.aliyun.com/pypi/simple/&&/bin/bash"

(这段命令是创建这个容器的时候遇到各种坑,ai问出来的可以执行,如果需要测试你的python脚本,可以将你的代码放到指定目录(可能会遇到权限问题,具体问题具体分析问ai
),会打印如下图片(创建这个容器用途主要是用来测试这个容器是否可用,这个镜像是否存在问题):)

## 三、部署Jenkins

###3.1  拉取Jenkins镜像

第一次拉取Jenkins镜像时,我没有指定版本,导致出现很多问题。后来我重新拉取了长期支持版本:docker pull jenkins:lts

###3.2 创建并启动Jenkins容器

docker run -d \
  --name zjjenkins \
  -p 8001:8080 \
  -p 50001:50000 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  -v /home/jenkins:/var/jenkins_home \
  -v /etc/localtime:/etc/localtime:ro \
  jenkins/jenkins:lts

###3.3 权限问题的解决

# 以root用户进入容器
docker exec -u root -it zjjenkins bash

# 在容器内修改权限
chmod 755 /usr/bin/docker

# 退出容器
exit

## 四、Jenkins流水线配置

###4.1 创建流水线任务

在Jenkins中创建流水线任务,命名为test

###4.2 配置流水线脚本

pipeline {
   agent { 
      docker { 
         image 'mcr.microsoft.com/playwright/python:v1.57.0-noble'
         args '-v ${WORKSPACE}:/workspace -w /workspace --user root'
      } 
   }

   stages {
      stage('e2e-tests') {
         steps {
            sh '''
               # 安装依赖
               pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

               # 修正包名(原文有拼写错误)
               pip uninstall -y pytest-playwright || true

               # 安装allure-pytest
               pip install allure-pytest -i https://pypi.tuna.tsinghua.edu.cn/simple/

               # 关键修改:使用 python -m pytest 而不是 pytest
               python -m pytest testcases/ -v -s
            '''
         }
      }
   }
}

###4.3 测试失败的处理

如果测试用例中有断言失败的情况,Pipeline任务会失败。如果希望测试失败时Pipeline不失败,可以使用pytest--tb=no-x选项。

## 五、生成测试报告

最后一步是在Jenkins中生成测试报告,具体操作可以根据项目的需要进行配置。

Read more

Windows环境Git安装教程(下载Git安装包、安装Git、验证Git是否安装成功、设置名字和邮箱)

Windows环境Git安装教程(下载Git安装包、安装Git、验证Git是否安装成功、设置名字和邮箱)

文章目录 * 1. 下载Git安装包 * 1.1 通过清华大学开源软件镜像站下载(推荐) * 1.2 通过Git官网下载 * 1.3 通过联想电脑管家下载 * 2. 安装Git(一路点击Next即可) * 3. 验证Git是否安装成功 * 4. 设置个人信息(名字和邮箱) 1. 下载Git安装包 1.1 通过清华大学开源软件镜像站下载(推荐) 下载地址:https://mirrors.tuna.tsinghua.edu.cn/github-release/git-for-windows/git/ https://mirrors.tuna.tsinghua.edu.cn/github-release/git-for-windows/git/ 点击 LatestRelease/ 目录 下载

By Ne0inhk
盘点IDEA中那些实用的GIT小技巧

盘点IDEA中那些实用的GIT小技巧

作者:唐叔在学习 专栏:唐叔的Java实践 关键词:IDEA技巧,开发效率优化, 代码比较, 团队协作, 程序员必备, 代码管理 一句话:还在用Commit和Pull?唐叔教你解锁IDEA中那些隐藏的Git神操作,让代码管理变得如此简单! 文章目录 * 前言 * 🔄 一、智能更新项目:Update Project * 🔍 二、精准代码比较:Git Show Diff * 1. 当前修改比较:Git Show Diff * 2. 分支/标签比较:Compare Branch or Tag * 📜 三、追溯代码历史:Show History for Selection * 💾 四、灵活提取修改:Patch * 📦 五、暂存未提交代码:Uncommitted

By Ne0inhk
最新版 Kimi K2.5 进阶实战全攻略:从开源部署到 Agent 集群搭建(视频理解 + 多模态开发 + 高并发调优)

最新版 Kimi K2.5 进阶实战全攻略:从开源部署到 Agent 集群搭建(视频理解 + 多模态开发 + 高并发调优)

1 技术背景与核心架构原理 1.1 技术定位与版本说明 Kimi K2.5 是月之暗面于2026年初发布的开源多模态大语言模型,聚焦长上下文理解、原生多模态交互、Agent 原生支持三大核心能力,针对工业级落地场景完成了全链路优化。本次实战覆盖的开源版本包括: * kimi-k2.5-chat-70b:基础对话版,支持2000K token 上下文窗口,原生适配工具调用 * kimi-k2.5-multimodal-70b:多模态完整版,新增图像、长视频时序理解能力,支持最长10小时连续视频输入 * kimi-k2.5-agent-70b:Agent 优化版,强化多轮工具链执行、分布式状态同步能力,适配集群化部署 * 量化衍生版本:AWQ 4bit/8bit、FP8 量化版,适配低显存硬件环境,精度损失控制在1%以内 1.2 核心架构与技术亮点 1.2.1

By Ne0inhk
最强开源多模态大模型它来啦——一文详解Qwen3.5核心特性

最强开源多模态大模型它来啦——一文详解Qwen3.5核心特性

前言 各位小伙伴新年好!新的一年祝大家龙马精神、阖家幸福、身体健康、事业进步!2025 年 DeepSeek 发布的 DeepSeek-R1 模型震惊全球,此后国内各大厂商充分发挥“能征善战”的拼劲,纷纷选择重大节日推出新品。今年除夕夜,阿里 Qwen 团队再次放出大招——Qwen3.5 模型正式开源,为国产大模型阵营再添一员猛将。 Qwen3.5 是目前全球最强的原生多模态开源大模型,不仅支持图片和视频的多模态输入,在对话、推理、编程、Agent 构建等方面也样样精通。其综合能力已达到 GPT-5.2、Gemini 3.0 Pro 的平均水平,推理能力尤为突出。例如那道曾让无数模型“翻车”的逻辑题——“50 米距离该走路还是开车去洗车”,Qwen3.5 也能轻松作答。

By Ne0inhk