专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

datadog/system-tests Docker 镜像 - 轩辕镜像

system-tests
datadog/system-tests
DataDog/system-tests项目的基础镜像,提供该项目系统测试所需的基础环境。
2 收藏0 次下载activedatadog镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

DataDog system-tests 基础镜像文档

镜像概述和主要用途

DataDog system-tests 基础镜像是专为 DataDog/system-tests 项目设计的底层支撑镜像,旨在为系统测试场景提供标准化、可复用的运行环境。该镜像预配置了测试所需的核心依赖、工具链及环境变量,确保跨平台、跨版本的测试一致性,简化测试环境搭建流程,提升测试效率。

核心功能和特性

1. 标准化测试环境
  • 基于 Debian/Ubuntu LTS 稳定版本构建,确保操作系统层兼容性。
  • 统一预装测试工具链(如 pytest、goss、curl、jq 等),避免环境差异导致的测试结果不一致。
2. 深度集成 DataDog 生态
  • 内置 DataDog Agent 基础运行环境,支持与 Agent 各版本的兼容性测试。
  • 预配置 Datadog 测试框架依赖(如 dd-trace-py、datadog-api-client),可直接对接测试用例。
3. 轻量级与可扩展性
  • 基于 Alpine 或精简 Debian 镜像优化,压缩镜像体积(默认镜像大小 < 500MB)。
  • 支持通过环境变量、卷挂载动态调整配置,适配不同测试场景需求。
4. 版本化与稳定性
  • 严格遵循语义化版本(SemVer),镜像标签与 system-tests 项目版本同步(如 v1.2.0)。
  • 每个版本镜像经过验证,确保依赖版本锁定,避免因上游依赖变更导致测试失败。

使用场景和适用范围

1. DataDog 内部系统测试
  • 用于 system-tests 项目核心功能验证(如 Agent 数据采集、Pipeline 处理逻辑)。
  • 支持多版本 Agent 兼容性测试(如 Agent v7.40+ 与测试用例的集成验证)。
2. 第三方集成测试
  • 第三方开发者基于 DataDog 产品构建集成时,可复用该镜像快速搭建测试环境。
3. CI/CD 流水线集成
  • 无缝对接 GitHub Actions、GitLab CI 等流水线工具,作为测试阶段的运行容器,自动执行系统测试套件。
4. 跨环境测试验证
  • 支持本地开发环境、测试服务器、云环境(AWS/GCP/Azure)等多场景部署,验证测试用例在不同基础设施下的表现。

使用方法和配置说明

1. 获取镜像

通过 Docker Hub 或 GitHub Container Registry 拉取镜像(需先配置 DataDog 私有仓库权限):

bash
# 从 GitHub Container Registry 拉取(推荐)
docker pull ghcr.io/datadog/system-tests-base:latest

# 或指定版本标签(如 v1.2.0)
docker pull ghcr.io/datadog/system-tests-base:v1.2.0
2. 基本使用示例
2.1 快速启动测试环境

以交互模式启动镜像,直接进入测试环境终端:

bash
docker run -it --rm \
  --name system-tests-env \
  ghcr.io/datadog/system-tests-base:latest \
  /bin/bash
2.2 运行测试用例

挂载本地测试文件到容器内,并执行测试命令:

bash
# 假设本地测试用例目录为 ./tests,输出报告至 ./reports
docker run --rm \
  -v $(pwd)/tests:/system-tests/tests \
  -v $(pwd)/reports:/system-tests/reports \
  -e TEST_MODE="integration" \
  -e DD_AGENT_VERSION="7.45.0" \
  ghcr.io/datadog/system-tests-base:latest \
  pytest /system-tests/tests -o log_file=/system-tests/reports/test.log
3. Dockerfile 集成

在自定义测试镜像中,可直接以该镜像为基础构建:

dockerfile
# 自定义测试镜像 Dockerfile
FROM ghcr.io/datadog/system-tests-base:v1.2.0

# 添加项目特定依赖
RUN pip install --no-cache-dir my-test-framework==1.0.0

# 复制测试用例
COPY ./custom-tests /system-tests/custom-tests

# 定义默认测试命令
CMD ["pytest", "/system-tests/custom-tests"]
4. 配置参数说明
4.1 环境变量
环境变量名描述可选值默认值
TEST_MODE测试类型unit(单元测试)、integration(集成测试)integration
DD_AGENT_VERSIONDataDog Agent 版本(用于兼容性测试)如 7.45.0、7.46.1latest
LOG_LEVEL日志输出级别debug、info、warn、errorinfo
TEST_TIMEOUT单测试用例超时时间(秒)正整数300
DD_API_KEYDataDog API Key(用于测试数据上报,非必填,仅集成测试需要)有效的 DataDog API Key空
4.2 卷挂载
挂载路径用途说明建议挂载方式
/system-tests/tests测试用例目录(容器内默认扫描路径)-v $(pwd)/tests:/system-tests/tests
/system-tests/reports测试报告输出目录(支持 JUnit XML、HTML 格式)-v $(pwd)/reports:/system-tests/reports
/var/run/datadog-agentDataDog Agent 运行时目录(如需与宿主机 Agent 通信,需共享该目录)--volume /var/run/datadog-agent:/var/run/datadog-agent
4.3 网络配置

若测试需与外部服务(如 DataDog Agent、数据库)通信,可通过端口映射或网络模式配置:

bash
# 映射容器内测试工具端口(如 8080 为测试服务端口)
docker run -p 8080:8080 ghcr.io/datadog/system-tests-base:latest

# 加入宿主机网络(直接访问宿主机上的 Agent)
docker run --net=host ghcr.io/datadog/system-tests-base:latest

部署方案示例

1. 单容器测试部署(docker run)
bash
# 集成测试场景:运行指定版本 Agent 的兼容性测试,输出 HTML 报告
docker run --rm \
  -v $(pwd)/tests:/system-tests/tests \
  -v $(pwd)/reports:/system-tests/reports \
  -e TEST_MODE="integration" \
  -e DD_AGENT_VERSION="7.45.0" \
  -e LOG_LEVEL="debug" \
  -e DD_API_KEY="${DD_API_KEY}" \
  -p 8126:8126  # 映射 APM 端口(如需测试追踪功能) \
  ghcr.io/datadog/system-tests-base:latest \
  pytest /system-tests/tests --html=/system-tests/reports/report.html
2. CI/CD 流水线集成(GitHub Actions)

在 .github/workflows/test.yml 中配置:

yaml
jobs:
  system-test:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4
      
      - name: Run system tests with base image
        run: |
          docker run --rm \
            -v ${{ github.workspace }}/tests:/system-tests/tests \
            -v ${{ github.workspace }}/reports:/system-tests/reports \
            -e TEST_MODE="integration" \
            -e DD_AGENT_VERSION="7.45.0" \
            -e DD_API_KEY="${{ secrets.DD_API_KEY }}" \
            ghcr.io/datadog/system-tests-base:latest \
            pytest /system-tests/tests
      
      - name: Upload test report
        uses: actions/upload-artifact@v3
        with:
          name: test-report
          path: reports/
3. Docker Compose 多服务测试

创建 docker-compose.yml 联动 Agent 服务:

yaml
version: '3.8'
services:
  system-test:
    image: ghcr.io/datadog/system-tests-base:latest
    volumes:
      - ./tests:/system-tests/tests
      - ./reports:/system-tests/reports
    environment:
      - TEST_MODE=integration
      - DD_AGENT_VERSION=7.45.0
      - LOG_LEVEL=info
    depends_on:
      - dd-agent
    networks:
      - test-net

  dd-agent:
    image: gcr.io/datadoghq/agent:7.45.0
    environment:
      - DD_API_KEY=${DD_API_KEY}
      - DD_SITE=datadoghq.com
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /proc/:/host/proc:ro
      - /sys/fs/cgroup/:/host/sys/fs/cgroup:ro
    networks:
      - test-net

networks:
  test-net:

启动命令:

bash
DD_API_KEY=${DD_API_KEY} docker-compose up --abort-on-container-exit

注意事项

  • 镜像需通过 DataDog 私有仓库权限认证(如 GitHub Container Registry 需配置 GHCR_PAT)。
  • 不同镜像版本可能存在依赖差异,建议在测试环境中明确指定版本标签(如 v1.2.0)而非 latest。
  • 敏感信息(如 DD_API_KEY)需通过环境变量或密钥管理工具注入,避免硬编码。
  • 测试报告目录建议通过卷挂载持久化,避免容器退出后数据丢失。
查看更多 system-tests 相关镜像 →
rancher/system-agent logo
rancher/system-agent
by Rancher by SUSE
认证
暂无描述
5M+ pulls
上次更新:23 天前
docker/compose-tests logo
docker/compose-tests
by Docker, Inc.
认证
暂无描述
1M+ pulls
上次更新:5 年前
docker/kube-compose-e2e-tests logo
docker/kube-compose-e2e-tests
by Docker, Inc.
认证
暂无描述
1M+ pulls
上次更新:3 年前
k8ssandra/system-logger logo
k8ssandra/system-logger
by DataStax
认证
用于Kubernetes环境中Apache Cassandra集群的日志辅助工具
1M+ pulls
上次更新:12 天前
rancher/system-agent-installer-rke2 logo
rancher/system-agent-installer-rke2
by Rancher by SUSE
认证
暂无描述
3100M+ pulls
上次更新:12 天前
rancher/system-agent-installer-k3s logo
rancher/system-agent-installer-k3s
by Rancher by SUSE
认证
暂无描述
150M+ pulls
上次更新:18 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
datadog/system-tests
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429