如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
DataDog Java Agent Docker镜像是用于为Java服务提供DataDog监控能力的专用镜像。该镜像封装了DataDog Java Agent(Java代理程序),通过Java Agent机制注入到Java应用进程中,实现对Java服务的性能监控、分布式追踪、错误检测及JVM指标收集,无需修改应用代码即可完成与DataDog平台的集成。
从DataDog官方镜像仓库拉取最新版本:
bashdocker pull gcr.io/datadoghq/dd-java-agent:latest
国内用户可使用镜像加速(如
datadog/dd-java-agent:latest,需确认镜像源可用性)。
通过docker run启动Java应用时,需将Agent JAR挂载到容器并通过-javaagent参数注入。
步骤1:挂载Agent JAR
将Agent镜像中的dd-java-agent.jar挂载到应用容器(以openjdk:11-jre-slim为例):
bashdocker run -d \ --name java-app-with-agent \ # 挂载Agent JAR到应用容器的/opt/datadog目录 -v $(docker run --rm gcr.io/datadoghq/dd-java-agent:latest cat /opt/datadog/dd-java-agent.jar > dd-java-agent.jar && pwd)/dd-java-agent.jar:/opt/datadog/dd-java-agent.jar \ # 配置DataDog Agent环境变量 -e DD_API_KEY=<YOUR_DATADOG_API_KEY> \ # 必选,DataDog平台API密钥 -e DD_SITE=datadoghq.com \ # 可选,默认datadoghq.com(国内用户用datadoghq.cn) -e DD_SERVICE=my-java-service \ # 必选,服务名称(如order-service) -e DD_ENV=production \ # 可选,环境名称(如prod/test) -e DD_VERSION=1.0.0 \ # 可选,应用版本(如v1.2.3) # 启动应用并注入Agent openjdk:11-jre-slim \ java -javaagent:/opt/datadog/dd-java-agent.jar -jar /app/my-app.jar
创建docker-compose.yml,集成Agent到Java服务:
yamlversion: '3.8' services: java-app: image: openjdk:11-jre-slim container_name: java-app volumes: # 挂载Agent JAR(需提前从Agent镜像复制到本地./agent目录) - ./agent/dd-java-agent.jar:/opt/datadog/dd-java-agent.jar # 挂载应用JAR包(本地应用路径) - ./app:/app environment: # DataDog基础配置 - DD_API_KEY=<YOUR_DATADOG_API_KEY> - DD_SITE=datadoghq.com - DD_SERVICE=order-service - DD_ENV=production - DD_VERSION=2.1.0 # 追踪配置 - DD_TRACE_ENABLED=true - DD_TRACE_SAMPLE_RATE=1.0 # 采样率(1.0=100%) # JVM监控配置 - DD_JVM_METRICS_ENABLED=true command: ["java", "-javaagent:/opt/datadog/dd-java-agent.jar", "-jar", "/app/order-service.jar"]
提前复制Agent JAR到本地:
bash# 创建Agent目录 mkdir -p ./agent # 从Agent镜像复制JAR到本地 docker run --rm -v $(pwd)/agent:/output gcr.io/datadoghq/dd-java-agent:latest cp /opt/datadog/dd-java-agent.jar /output/
4.4.1 环境变量配置
Agent支持通过环境变量动态调整参数,常用配置如下表:
| 环境变量名 | 描述 | 默认值 | 是否必填 |
|---|---|---|---|
DD_API_KEY | DataDog平台API密钥(从控制台获取) | - | 是 |
DD_SITE | DataDog站点(国内用datadoghq.cn) | datadoghq.com | 否 |
DD_SERVICE | 服务名称(用于APM和指标聚合) | java-app | 否 |
DD_ENV | 环境名称(如prod/test/dev) | - | 否 |
DD_VERSION | 应用版本(如v1.2.3) | - | 否 |
DD_TRACE_ENABLED | 是否启用分布式追踪(true/false) | true | 否 |
DD_TRACE_SAMPLE_RATE | 追踪采样率(0.0~1.0,1.0=100%) | 1.0 | 否 |
DD_JVM_METRICS_ENABLED | 是否启用JVM指标收集(true/false) | true | 否 |
DD_LOGS_INJECTION | 是否将追踪ID注入日志(需日志框架支持) | true | 否 |
4.4.2 配置文件挂载
如需更复杂的配置(如自定义指标、采样规则),可通过挂载dd-java-agent.yaml配置文件实现:
./agent-config/dd-java-agent.yaml:yaml# 自定义JVM指标收集间隔(秒) jvm: metrics_collection_interval: 10 # 分布式追踪采样规则 trace: sampler: rules: - service: "payment-service" sample_rate: 0.5 # 支付服务采样率50% - service: "order-service" sample_rate: 1.0 # 订单服务采样率100% # 自定义标签(全局附加到所有指标) tags: - "team:backend" - "owner:dev@example.com"
docker-compose.yml中挂载配置文件:yamlservices: java-app: # ... 其他配置 ... volumes: - ./agent/dd-java-agent.jar:/opt/datadog/dd-java-agent.jar - ./agent-config/dd-java-agent.yaml:/opt/datadog/dd-java-agent.yaml # 挂载配置文件 environment: # 指定配置文件路径 - DD_CONFIG=/opt/datadog/dd-java-agent.yaml
DD_API_KEY为敏感信息,建议通过Docker Secrets或Kubernetes Secrets管理,避免硬编码到配置文件。-Xmx50m),避免因资源不足导致Agent崩溃。agent-intake.<DD_SITE>端口443),若使用私有网络,需配置代理或允许出站流量。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务