如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
arm64v8/spark 是针对ARM64架构优化的Apache Spark官方Docker镜像,基于https://hub.docker.com/_/spark%E7%9A%84%60arm64v8%60%E6%9E%B6%E6%9E%84%E6%9E%84%E5%BB%BA%E7%89%88%E6%9C%AC%E3%80%82Apache Spark是一个统一的大数据分析引擎,支持大规模数据处理、数据科学和机器学习任务,提供多语言API(Scala、Java、Python、R)及分布式计算能力。该镜像适用于在ARM64架构环境中快速部署和运行Spark应用,简化大数据处理流程。
spark-shell、pyspark、sparkR),便于实时数据分析和调试| 标签 | 对应的Dockerfile链接 |
|---|---|
4.0.0-scala2.13-java21-python3-ubuntu, 4.0.0-java21-python3, 4.0.0-java21, python3, latest | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java21-python3-ubuntu/Dockerfile |
4.0.0-scala2.13-java21-r-ubuntu, 4.0.0-java21-r | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java21-r-ubuntu/Dockerfile |
4.0.0-scala2.13-java21-ubuntu, 4.0.0-java21-scala | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java21-ubuntu/Dockerfile |
4.0.0-scala2.13-java21-python3-r-ubuntu | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java21-python3-r-ubuntu/Dockerfile |
4.0.0-scala2.13-java17-python3-ubuntu, 4.0.0-python3, 4.0.0, python3-java17 | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java17-python3-ubuntu/Dockerfile |
4.0.0-scala2.13-java17-r-ubuntu, 4.0.0-r, r | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java17-r-ubuntu/Dockerfile |
4.0.0-scala2.13-java17-ubuntu, 4.0.0-scala, scala | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java17-ubuntu/Dockerfile |
4.0.0-scala2.13-java17-python3-r-ubuntu | https://github.com/apache/spark-docker/blob/4bd1dbce94797b5b387b784db6b378069a8b6328/4.0.0/scala2.13-java17-python3-r-ubuntu/Dockerfile |
3.5.7-scala2.12-java17-python3-ubuntu, 3.5.7-java17-python3, 3.5.7-java17 | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java17-python3-ubuntu/Dockerfile |
3.5.7-scala2.12-java17-r-ubuntu, 3.5.7-java17-r | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java17-r-ubuntu/Dockerfile |
3.5.7-scala2.12-java17-ubuntu, 3.5.7-java17-scala | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java17-ubuntu/Dockerfile |
3.5.7-scala2.12-java17-python3-r-ubuntu | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java17-python3-r-ubuntu/Dockerfile |
3.5.7-scala2.12-java11-python3-ubuntu, 3.5.7-python3, 3.5.7 | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java11-python3-ubuntu/Dockerfile |
3.5.7-scala2.12-java11-r-ubuntu, 3.5.7-r | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java11-r-ubuntu/Dockerfile |
3.5.7-scala2.12-java11-ubuntu, 3.5.7-scala | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java11-ubuntu/Dockerfile |
3.5.7-scala2.12-java11-python3-r-ubuntu | https://github.com/apache/spark-docker/blob/2ebf694ad45fee6f4beeeb4204bcdb01d73c988f/3.5.7/scala2.12-java11-python3-r-ubuntu/Dockerfile |
Scala Shell
通过Scala Shell快速开始Spark交互:
bashdocker run -it arm64v8/spark /opt/spark/bin/spark-shell
示例命令(返回1,000,000,000):
scalascala> spark.range(1000 * 1000 * 1000).count()
Python Shell(PySpark)
使用Python Shell需指定python3标签:
bashdocker run -it arm64v8/spark:python3 /opt/spark/bin/pyspark
示例命令:
python>>> spark.range(1000 * 1000 * 1000).count()
R Shell(SparkR)
使用R Shell需指定r标签:
bashdocker run -it arm64v8/spark:r /opt/spark/bin/sparkR
单节点Spark集群(docker run)
启动Spark Master节点:
bashdocker run -d \ --name spark-master \ -p 7077:7077 \ -p 8080:8080 \ arm64v8/spark \ /opt/spark/bin/spark-class org.apache.spark.deploy.master.Master
启动Spark Worker节点(连接到Master):
bashdocker run -d \ --name spark-worker \ --link spark-master:master \ arm64v8/spark \ /opt/spark/bin/spark-class org.apache.spark.deploy.worker.Worker spark://master:7077
Docker Compose配置(单节点集群)
创建docker-compose.yml:
yamlversion: '3' services: master: image: arm64v8/spark container_name: spark-master ports: - "7077:7077" # Master节点端口 - "8080:8080" # Web UI端口 command: /opt/spark/bin/spark-class org.apache.spark.deploy.master.Master worker: image: arm64v8/spark container_name: spark-worker depends_on: - master environment: - SPARK_MASTER=spark://master:7077 command: /opt/spark/bin/spark-class org.apache.spark.deploy.worker.Worker ${SPARK_MASTER}
启动集群:
bashdocker-compose up -d
Spark支持在Kubernetes上部署,详细文档参见官方指南。
镜像支持通过环境变量自定义Spark配置,常见配置项及说明参见https://github.com/apache/spark-docker/blob/master/OVERVIEW.md#environment-variable%E3%80%82%E5%85%B3%E9%94%AE%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%8C%85%E6%8B%AC%EF%BC%9A
SPARK_HOME:Spark安装路径(默认/opt/spark)SPARK_MASTER:Master节点地址(如spark://master:7077)SPARK_WORKER_CORES:Worker节点可用CPU核心数SPARK_WORKER_MEMORY:Worker节点可用内存(如4g)Apache Spark及其Docker镜像基于Apache License 2.0许可。镜像可能包含其他软件(如基础系统工具),其许可需由用户自行确认合规性。
更多许可信息参见https://github.com/docker-library/repo-info/tree/master/repos/spark%E3%80%82
以下是 arm64v8/spark 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



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