专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题轩辕镜像免费版
其他
关于我们网站地图
热门搜索:
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies

ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.7.2-elasticsearch7

ghcr.iolinux/amd64v0.7.2-elasticsearch7大小: 未知更新于 2026年5月23日

Jaeger Spark 依赖分析

这是一个 Spark 作业,用于从存储中收集追踪跨度(spans),分析服务间的链路关系,并将其存储以便后续在 UI 中展示。> [!NOTE] 生产环境部署需要此作业。all-in-one 发行版不需要此作业。

此作业基于 UTC 时间解析指定日期的所有追踪数据。默认情况下,它处理当天数据,但也可以显式指定其他日期。

快速启动

Spark 作业可以作为 Docker 容器运行,也可以作为 Java 可执行文件运行:

容器镜像变体

从 0.6.x 版本开始,Docker 镜像以特定变体标签发布。每个变体自动使用相应的存储后端,因此不再需要 STORAGE 环境变量。

镜像命名格式为 ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:{VERSION}-{VARIANT}:

  • VERSION-cassandra:适用于 Cassandra 存储(直接使用 CassandraDependenciesJob)
  • VERSION-elasticsearch7:适用于 Elasticsearch 7.12-7.16(使用 ElasticsearchDependenciesJob 和 ES 连接器 7.17.29)
  • VERSION-elasticsearch8:适用于 Elasticsearch 7.17+ 和 8.x(使用 ElasticsearchDependenciesJob 和 ES 连接器 8.13.4)
  • VERSION-elasticsearch9:适用于 Elasticsearch 9.x(使用 ElasticsearchDependenciesJob 和 ES 连接器 9.1.3)—— 也标记为 :latest
  • VERSION-opensearch:适用于 OpenSearch 2.x 和 3.x(使用 OpenSearchDependenciesJob 和 OpenSearch Java 客户端)

Cassandra 示例:

$ docker run \
--env CASSANDRA_CONTACT_POINTS=host1,host2 \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-cassandra

Elasticsearch 8.x 示例:

$ docker run \
--env ES_NODES=http://elasticsearch:9200 \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-elasticsearch8

OpenSearch 示例:

$ docker run \
--env OS_NODES=http://opensearch:9200 \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-opensearch

高级配置

使用 --env JAVA_OPTS 传递额外的 Java 选项,例如内存设置、SSL 信任库或其他 JVM 属性:

# 示例:配置 SSL 信任库
$ docker run \
--env ES_NODES=https://elasticsearch:9200 \
--env JAVA_OPTS="-Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=changeit" \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-elasticsearch8

# 示例:增加 JVM 堆大小
$ docker run \
--env OS_NODES=http://opensearch:9200 \
--env JAVA_OPTS="-Xmx2g -Xms1g" \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-opensearch

使用 --env LOG4J_STATUS_LOGGER_LEVEL 控制 Log4j2 内部状态消息(默认值为 OFF):

# 示例:启用 Log4j2 调试日志以进行故障排查
$ docker run \
--env OS_NODES=http://opensearch:9200 \
--env LOG4J_STATUS_LOGGER_LEVEL=DEBUG \
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies:v0.5.3-opensearch

[!NOTE] 最新版本托管在 ghcr.io 上,而非 Docker Hub。

作为 JAR 文件:

STORAGE=cassandra java -jar jaeger-spark-dependencies.jar

使用方法

默认情况下,此作业解析自 UTC 午夜起的所有追踪数据。您可以通过 YYYY-mm-dd 格式的参数(如 2016-07-16)解析其他日期的追踪数据,或通过环境属性指定日期。

# 示例:在 OS/X 上运行作业以处理昨天的追踪数据
$ STORAGE=cassandra java -jar jaeger-spark-dependencies.jar `date -uv-1d +%F`
# 或在 Linux 上
$ STORAGE=cassandra java -jar jaeger-spark-dependencies.jar `date -u -d '1 day ago' +%F`

配置

jaeger-spark-dependencies 通过环境变量应用配置参数。

以下变量适用于所有存储层:

  • SPARK_MASTER:提交作业的 Spark 主节点;默认为 local[*]
  • DATE:YYYY-mm-dd 格式的日期。表示将为其创建依赖链路的日期。
  • PEER_SERVICE_TAG:用于在跨度中标识对等服务的标签名称。默认为 peer.service
  • JAVA_OPTS:传递给 JVM 的额外 Java 选项。用于配置内存、SSL 属性或其他 JVM 设置。示例:JAVA_OPTS="-Xmx2g -Djavax.net.ssl.trustStore=/path/to/truststore"。> [!NOTE] Java 21+ 上运行 Spark 所需的 --add-opens 标志已包含在容器镜像中。
  • LOG4J_STATUS_LOGGER_LEVEL:Log4j2 StatusLogger 级别。默认为 OFF 以抑制 Log4j2 内部状态消息。如果需要调试日志配置问题,可设置为 TRACE、DEBUG、INFO、WARN、ERROR 或 FATAL。

Cassandra

当 STORAGE=cassandra 时使用 Cassandra。

  • CASSANDRA_KEYSPACE:要使用的键空间。默认为 "jaeger_v1_dc1"。
  • CASSANDRA_CONTACT_POINTS:Cassandra 集群中的主机/IP 地址列表,以逗号分隔。默认为 localhost
  • CASSANDRA_LOCAL_DC:要连接的本地数据中心(其他节点将被忽略)
  • CASSANDRA_USERNAME 和 CASSANDRA_PASSWORD:Cassandra 身份验证。如果身份验证失败,启动时将抛出异常
  • CASSANDRA_USE_SSL:需要 javax.net.ssl.trustStore 和 javax.net.ssl.trustStorePassword,默认为 false。
  • CASSANDRA_CLIENT_AUTH_ENABLED:如果设置,将在 SSL 连接上启用客户端身份验证。需要 javax.net.ssl.keyStore 和 javax.net.ssl.keyStorePassword,默认为 false。

使用示例:

$ STORAGE=cassandra CASSANDRA_CONTACT_POINTS=localhost:9042 java -jar jaeger-spark-dependencies.jar

Elasticsearch

当 STORAGE=elasticsearch 时使用 Elasticsearch。

[!IMPORTANT] 请为您的 Elasticsearch 版本使用相应的 Docker 镜像变体:

  • ES 7.12-7.16:使用 :VERSION-elasticsearch7 标签
  • ES 7.17-8.x:使用 :VERSION-elasticsearch8 标签
  • ES 9.x:使用 :VERSION-elasticsearch9 标签(或 :latest)

配置

本地构建

要在本地构建作业并运行测试:

./mvnw clean install # 若失败,添加 SPARK_LOCAL_IP=127.0.0.1

要运行统一JAR(包含所有依赖):

STORAGE=cassandra java -jar jaeger-spark-dependencies/target/jaeger-spark-dependencies-0.0.1-SNAPSHOT.jar
# 或
STORAGE=elasticsearch ES_NODES=http://localhost:9200 java -jar jaeger-spark-dependencies/target/jaeger-spark-dependencies-0.0.1-SNAPSHOT.jar
# 或
STORAGE=opensearch OS_NODES=http://localhost:9200 java -jar jaeger-spark-dependencies/target/jaeger-spark-dependencies-0.0.1-SNAPSHOT.jar

要直接运行特定存储的JAR(无需STORAGE变量):

# Cassandra
java -jar jaeger-spark-dependencies-cassandra/target/jaeger-spark-dependencies-cassandra-0.0.1-SNAPSHOT.jar
# Elasticsearch
ES_NODES=http://localhost:9200 java -jar jaeger-spark-dependencies-elasticsearch/target/jaeger-spark-dependencies-elasticsearch-0.0.1-SNAPSHOT.jar
# OpenSearch
OS_NODES=http://localhost:9200 java -jar jaeger-spark-dependencies-opensearch/target/jaeger-spark-dependencies-opensearch-0.0.1-SNAPSHOT.jar

构建Docker镜像:

[!NOTE] Dockerfile现在需要预构建的JAR。请先使用Maven构建JAR,然后再构建Docker镜像。

对于Cassandra:

./mvnw clean package --batch-mode -Dlicense.skip=true -DskipTests -pl jaeger-spark-dependencies-cassandra -am
mkdir -p artifact-target
cp jaeger-spark-dependencies-cassandra/target/jaeger-spark-dependencies-cassandra-0.0.1-SNAPSHOT.jar artifact-target/
docker build --build-arg VARIANT=cassandra -t jaegertracing/spark-dependencies:cassandra .

对于Elasticsearch 9:

./mvnw clean package --batch-mode -Dlicense.skip=true -DskipTests -Dversion.elasticsearch.spark=9.1.3 -pl jaeger-spark-dependencies-elasticsearch -am
mkdir -p artifact-target
cp jaeger-spark-dependencies-elasticsearch/target/jaeger-spark-dependencies-elasticsearch-0.0.1-SNAPSHOT.jar artifact-target/
docker build --build-arg VARIANT=elasticsearch9 -t jaegertracing/spark-dependencies:elasticsearch9 .

在测试中,可以通过环境变量JAEGER_VERSION或系统属性jaeger.version指定Jaeger镜像的版本。默认情况下,测试使用最新镜像。

以下环境变量用于集成测试:

  • SPARK_DEPENDENCIES_JOB_TAG:指定测试中使用的 Docker 镜像标签(例如 test-cassandra、test-es7、test-es8、test-es9)
  • ELASTICSEARCH_VERSION:指定 Testcontainers 使用的 Elasticsearch 版本
  • JAEGER_VERSION:(可选)指定测试中使用的 Jaeger 镜像版本。默认为 latest。

您也可以将其设置为系统属性:

./mvnw test -Djaeger.version=2.14.0

故障排除

Docker 权限问题

如果遇到 Docker 权限问题,请确保您的用户属于 docker 组:

sudo usermod -aG docker $USER

然后登出并重新登录。

Testcontainers 问题

如果 Testcontainers 启动失败,请确保:

  1. Docker 正在运行且可访问
  2. 已拉取 Ryuk 镜像:docker pull testcontainersofficial/ryuk:latest
  3. 有足够的磁盘空间用于存储 Docker 镜像

构建失败

如果遇到构建失败:

  1. 确保已安装 Java 21
  2. 清理 Maven 缓存:./mvnw clean
  3. 尝试使用 -U 标志强制更新依赖项:./mvnw -U clean install

端口冲突

如果测试因端口冲突而失败,请确保没有其他服务在 Testcontainers 使用的端口上运行(通常是临时端口,但有时是标准端口,如 Cassandra 的 9042 或 Elasticsearch 的 9200)。

CI/CD 流水线

项目使用统一的 CI/CD 流水线(.github/workflows/ci-cd.yml),该流水线实现了主机构建矩阵模式(Host-Build Matrix Pattern):

  1. 设置与依赖项下载 - 一次性下载所有 Maven 依赖项,并为后续作业预热缓存
  2. 构建 JAR - 在 GitHub 运行器上构建特定于存储的 JAR(所有变体并行构建)
  3. 端到端测试 - 使用带有预构建 JAR 的 Docker 容器测试每个变体
  4. 发布 - 将多架构 Docker 镜像(linux/amd64、linux/arm64)发布到 GitHub Container Registry

流水线支持四个变体:

  • cassandra - 适用于 Cassandra 存储
  • elasticsearch7 - 适用于 Elasticsearch 7.12-7.16(ES 连接器 7.17.29)
  • elasticsearch8 - 适用于 Elasticsearch 7.17+ 和 8.x(ES 连接器 8.13.4)
  • elasticsearch9 - 适用于 Elasticsearch 9.x(ES 连接器 9.1.3)

这种方法消除了 Docker 构建中的 Maven 下载,并跨所有存储变体并行化构建过程。

许可证

Apache 2.0 许可证。

轩辕镜像配置手册

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

Docker 配置

登录仓库拉取

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

专属域名拉取

无需登录使用专属域名

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

Harbor 镜像源配置

Harbor Proxy Repository 对接专属域名

Portainer 镜像源配置

Portainer Registries 加速拉取

Nexus 镜像源配置

Nexus3 Docker Proxy 内网缓存

系统配置

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

MacOS OrbStack

MacOS OrbStack 容器配置

Docker Compose

Docker Compose 项目配置

NAS 设备

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

极空间

极空间 NAS 系统配置服务

网络设备

爱快路由

爱快 iKuai 路由系统配置

宝塔面板

在宝塔面板一键配置镜像

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

镜像拉取常见问题

使用与功能问题

配置了专属域名后,docker search 为什么会报错?

docker search 限制

Docker Hub 上有的镜像,为什么在轩辕镜像网站搜不到?

站内搜不到镜像

机器不能直连外网时,怎么用 docker save / load 迁镜像?

离线 save/load

docker pull 拉插件报错(plugin v1+json)怎么办?

插件要用 plugin install

WSL 里 Docker 拉镜像特别慢,怎么排查和优化?

WSL 拉取慢

轩辕镜像安全吗?如何用 digest 校验镜像没被篡改?

安全与 digest

第一次用轩辕镜像拉 Docker 镜像,要怎么登录和配置?

新手拉取配置

轩辕镜像合规吗?轩辕镜像的合规是怎么做的?

镜像合规机制

轩辕镜像支持 docker push 上传本地镜像吗?

不支持 push

错误码与失败问题

docker pull 提示 manifest unknown 怎么办?

manifest unknown

docker pull 提示 no matching manifest 怎么办?

no matching manifest(架构)

镜像已拉取完成,却提示 invalid tar header 或 failed to register layer 怎么办?

invalid tar header(解压)

Docker pull 时 HTTPS / TLS 证书验证失败怎么办?

TLS 证书失败

Docker pull 时 DNS 解析超时或连不上仓库怎么办?

DNS 超时

docker 无法连接轩辕镜像域名怎么办?

域名连通性排查

Docker 拉取出现 410 Gone 怎么办?

410 Gone 排查

出现 402 或「流量用尽」提示怎么办?

402 与流量用尽

Docker 拉取提示 UNAUTHORIZED(401)怎么办?

401 认证失败

遇到 429 Too Many Requests(请求太频繁)怎么办?

429 限流

docker login 提示 Cannot autolaunch D-Bus,还算登录成功吗?

D-Bus 凭证提示

为什么会出现「单层超过 20GB」或 413,无法加速拉取?

413 与超大单层

账号 / 计费 / 权限

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

免费版与专业版区别

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

支持的镜像仓库

镜像拉取失败还会不会扣流量?

失败是否计费

麒麟 V10 / 统信 UOS 提示 KYSEC 权限不够怎么办?

KYSEC 拦截脚本

如何在轩辕镜像申请开具发票?

申请开票

怎么修改轩辕镜像的网站登录和仓库登录密码?

修改登录密码

如何注销轩辕镜像账户?要注意什么?

注销账户

配置与原理类

写了 registry-mirrors,为什么还是走官方或仍然报错?

mirrors 不生效

怎么用 docker tag 去掉镜像名里的轩辕域名前缀?

去掉域名前缀

如何拉取指定 CPU 架构的镜像(如 ARM64、AMD64)?

指定架构拉取

用轩辕镜像拉镜像时快时慢,常见原因有哪些?

拉取速度原因

为什么拉取镜像的 :latest 标签,拿到的往往不是「最新」镜像?

latest 与「最新」

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

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

轩辕镜像
镜像详情
...
ghcr.io/jaegertracing/spark-dependencies/spark-dependencies
博客Docker 镜像公告与技术博客
热门查看热门 Docker 镜像推荐
安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单。官方公众号:源码跳动。官方技术交流群:51517718。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单。官方公众号:源码跳动。官方技术交流群:。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.