dfe2e Docker 镜像下载 - 轩辕镜像
dfe2e 镜像详细信息和使用指南
dfe2e 镜像标签列表和版本信息
dfe2e 镜像拉取命令和加速下载
dfe2e 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
dfe2e 镜像详细信息
dfe2e 镜像标签列表
dfe2e 镜像使用说明
dfe2e 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
dfe2e 镜像详细说明
dfe2e 使用指南
dfe2e 配置说明
dfe2e 官方文档
dfe2e 镜像文档
镜像概述和主要用途
dfe2e 是一个端到端测试仓库,旨在通过自动化测试验证 Doofinder 相关项目的功能正确性。目前包含 6 个项目测试:doofapi、doomanager、doophoenix、doophoenix_v6、livelayer 和 livelayer-mobile。该镜像基于 Cypress 和 Docker 构建,支持本地和远程测试执行,通过静态 HTML 文件和预配置的搜索引擎验证各类功能场景。
核心功能和特性
- 多项目测试支持:覆盖 6 个核心项目的端到端测试场景
- 本地/远程执行:提供脚本支持本地 GUI 测试和远程自动化测试
- Docker 集成:通过 Docker Compose 快速搭建测试环境,包含静态 Web 服务器和 Cypress 执行环境
- 预配置测试资源:使用
***账号下的专用搜索引擎和商店,确保测试环境一致性 - 跨区域支持:EU 和 US 区域使用相同配置的搜索引擎,便于区域切换测试
- 环境变量控制:支持通过环境变量(如
DOOPHOENIX、ZONE)灵活配置测试参数 - CI/CD 集成:提供 Docker 镜像
doofinder/dfe2e,支持与 GitHub Actions 等工具集成
使用场景和适用范围
- 本地开发测试:开发人员在本地环境验证功能变更
- ** staging 环境验证**:通过 GitHub Action 对预发布环境进行自动化测试
- 生产环境验证:执行远程脚本验证生产环境功能稳定性
- 跨区域测试:切换 EU/US 区域测试搜索服务一致性
- CI/CD 流水线集成:作为构建流程的一部分,自动执行端到端测试
详细使用方法和配置说明
快速开始
本地测试
bash# 首次运行需为每个商店强制处理所有索引到 *** 用户 $ ./bin/local.sh project_name # project_name 为测试项目名称(如 doophoenix、livelayer)
远程测试
bash$ ./bin/remote.sh project_name
本地挂载结构
- 测试资源:静态 HTML 文件位于
webserver/html/,测试脚本位于e2e/project_name/cypress/integration - Docker Compose 服务:
e2e-testing.doofinder.com:静态 Web 服务器,提供webserver/html目录下的文件e2e:基于cypress/included:7.7.0镜像,提供 Cypress 执行环境和 GUI 界面
测试基础架构
搜索引擎
所有测试使用 *** 账号下的"测试专用"搜索引擎(位于"Default Store"),每个引擎配置不同测试场景:
| 搜索引擎名称 | 哈希ID | 特性说明 |
|---|---|---|
| doofinder e2e testing 1 | 7f74a4ff3165fe9882f460d03a40c5d9 | 硬编码加载脚本 |
| doofinder e2e testing 2 | 3dce6e7fb6dc40041ef003acfdb09e8a | 动态加载脚本 |
| doofinder e2e testing 3 | *** | 带自定义 CSS 的动态加载脚本 |
| doofinder e2e testing 4 | 041a812bde0613978d9e2f9d9c8323d8 | - |
| doofinder e2e testing 5 | 7c4dc04b621f90a51c23cc9b55e68a34 | - |
| doofinder e2e testing 6 | d9a488511916331027e4626d8f28c467 | 已停用(生产测试未使用) |
| doofinder e2e testing 7 | bbf8055bcbbdbfa44f085c1ccd52aad9 | - |
| doofinder e2e testing 8 | 7a3adf59b007c8a570ec6bb0e66e9d83 | 分组项目,截断频率设为 0.0000000000001 |
注意:EU 和 US 区域的搜索引擎配置完全一致,哈希ID相同。
多区域搜索引擎创建方法
如需在 US 区域创建与 EU 相同的搜索引擎,可在 US1 ipython 控制台执行:
pyconIn [1]: from helpck.users.models import DoofinderUser In [2]: from helpck.search_engines.models import SearchEngine In [3]: from helpck.search_engines.usecases.users import send_user_events In [4]: user = DoofinderUser.objects.get(email='***') In [5]: a = user.account In [6]: se = SearchEngine.objects.create( site_url='[***] account=a, hashid='7f74a4ff3165fe9882f460d03a40c5d9' # 替换为目标哈希ID ) In [7]: send_user_events(se) # 必须执行,确保事件同步
测试商店
除"Default Store"外,*** 账号下包含多个专用测试商店,用于验证不同 live layer 场景:
| 商店名称 | 商店ID | 测试场景 |
|---|---|---|
| e2e testing - livelayer TYPE_A | bb7ea73d-aa96-4993-a2cb-532fc8e6a7a3 | 全屏和移动层 |
| e2e testing - livelayer TYPE_C | 018ed9fa-203e-40b9-9ff9-dbf7c3d39016 | 浮动层 |
| e2e testing - livelayer TYPE_E | a5acfe75-5aa8-4ab8-aca5-96a9f1e31370 | 嵌入式层 |
| e2e-testing - livelayer TYPE_A shopper assistant | b6b2037f-4b8c-4195-821c-12f2a9530693 | 全屏层购物助手 |
| ...(完整列表参见原始文档) | ... | ... |
Live Layer 测试
索引处理命令
bash# 索引所有 e2e 数据源,运行建议并生成 fakes3 单行 JS 文件 docker exec doomanager-doomanager-1 mix process_indices_suggestions_and_store_configs 2e333961bf48540a1c9a34a55151b6
本地测试命令
bash# 使用旧本地脚本运行 ./bin/local.sh livelayer # 使用本地唯一脚本运行 ./bin/local.sh livelayer loader2-local # 使用 staging 环境唯一脚本运行 ./bin/local.sh livelayer loader2-staging # 使用生产环境唯一脚本运行 ./bin/local.sh livelayer loader2-production # 使用指定 URL 的脚本运行 ./bin/local.sh livelayer loader2-[***]
环境变量配置
doophoenix 参数
- 本地环境:静态页面默认使用
[***]作为搜索服务器 - 远程环境:使用环境变量
DOOPHOENIX,未设置时默认使用eu1-search.doofinder.com
bash# 示例:设置 US 区域搜索服务器 export DOOPHOENIX="[***]"
区域切换
通过 ZONE 环境变量切换测试区域:
bash# US 区域运行 livelayer 测试 $ ZONE=us1 ./bin/remote.sh livelayer
Staging 环境测试
通过 E2E Tests 1.15 GitHub Action 执行:
- 确保实例运行(未运行可通过 Action 启动,取消勾选"stop staging at the end"保持实例运行)
- 从本地运行测试:
bash# 针对 staging 环境运行 livelayer 测试 $ ENVIRONMENT=staging ./bin/remote.sh livelayer # 针对 staging 环境运行 livelayer-mobile 测试 $ ENVIRONMENT=staging ./bin/remote.sh livelayer-mobile
- 测试完成后,通过 Action(勾选"stop staging at the end")或 AWS 控制台将 Auto Scaling Group 期望容量设为 0 停止实例。
生产环境测试
基本命令
bash$ ./bin/remote.sh project_name # 自动同步 s3 仓库并生成测试视频
跨区域测试
bash# US 区域运行 doophoenix 测试 $ DOOPHOENIX=[***] ./bin/remote.sh doophoenix # US 区域运行 livelayer 测试 $ ZONE=us1 ./bin/remote.sh livelayer
测试结果查看
远程测试视频保存在 dfe2e/e2e/project_name/cypress/videos/ 目录。
Docker 镜像使用
私有镜像 doofinder/dfe2e 包含完整测试环境,master 分支提交后由 Docker Hub 自动更新。
bash# 运行生产测试 docker run --rm doofinder/dfe2e --project project_name # 带环境变量运行 docker run --rm -e ZONE=us1 doofinder/dfe2e --project livelayer
Cypress "open" 模式配置
修改 docker-compose.yml,将 "run" 替换为 "open" 并移除 --headed 参数:
yaml# 原配置 command: ["run", "--headed", ...] # 修改后 command: ["open", ...] # 移除 "--headed"
已知本地错误及解决方法
连接拒绝错误(ERRORCONNECTIONREFUSED)
bash# 导出 doophoenix 主机 export DOOPHOENIX="[***]" # 如 hosts 文件未包含 doophoenix,添加映射 sudo echo "127.0.0.1 doophoenix" >> /etc/hosts
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
轩辕镜像下载加速使用手册
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
登录仓库拉取
通过 Docker 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429