本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

dfe2e 是一个端到端测试仓库,旨在通过自动化测试验证 Doofinder 相关项目的功能正确性。目前包含 6 个项目测试:doofapi、doomanager、doophoenix、doophoenix_v6、livelayer 和 livelayer-mobile。该镜像基于 Cypress 和 Docker 构建,支持本地和远程测试执行,通过静态 HTML 文件和预配置的搜索引擎验证各类功能场景。
*** 账号下的专用搜索引擎和商店,确保测试环境一致性DOOPHOENIX、ZONE)灵活配置测试参数doofinder/dfe2e,支持与 GitHub Actions 等工具集成# 首次运行需为每个商店强制处理所有索引到 *** 用户 $ ./bin/local.sh project_name # project_name 为测试项目名称(如 doophoenix、livelayer)
$ ./bin/remote.sh project_name
webserver/html/,测试脚本位于 e2e/project_name/cypress/integratione2e-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 控制台执行:
In [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 | 全屏层购物助手 | 
| ...(完整列表参见原始文档) | ... | ... | 
# 索引所有 e2e 数据源,运行建议并生成 fakes3 单行 JS 文件 docker exec doomanager-doomanager-1 mix process_indices_suggestions_and_store_configs 2e333961bf48540a1c9a34a55151b6
# 使用旧本地脚本运行 ./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,未设置时默认使用 eu1-search.doofinder.com# 示例:设置 US 区域搜索服务器 export DOOPHOENIX="[***]"
通过 ZONE 环境变量切换测试区域:
# US 区域运行 livelayer 测试 $ ZONE=us1 ./bin/remote.sh livelayer
通过 E2E Tests 1.15 GitHub Action 执行:
# 针对 staging 环境运行 livelayer 测试 $ ENVIRONMENT=staging ./bin/remote.sh livelayer # 针对 staging 环境运行 livelayer-mobile 测试 $ ENVIRONMENT=staging ./bin/remote.sh livelayer-mobile
$ ./bin/remote.sh project_name # 自动同步 s3 仓库并生成测试视频
# US 区域运行 doophoenix 测试 $ DOOPHOENIX=[***] ./bin/remote.sh doophoenix # US 区域运行 livelayer 测试 $ ZONE=us1 ./bin/remote.sh livelayer
远程测试视频保存在 dfe2e/e2e/project_name/cypress/videos/ 目录。
私有镜像 doofinder/dfe2e 包含完整测试环境,master 分支提交后由 Docker Hub 自动更新。
# 运行生产测试 docker run --rm doofinder/dfe2e --project project_name # 带环境变量运行 docker run --rm -e ZONE=us1 doofinder/dfe2e --project livelayer
修改 docker-compose.yml,将 "run" 替换为 "open" 并移除 --headed 参数:
# 原配置 command: ["run", "--headed", ...] # 修改后 command: ["open", ...] # 移除 "--headed"
# 导出 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 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429