如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本Docker镜像提供预配置环境,旨在简化Apache Spark与Swift存储服务的连接流程。通过集成Spark-Swift连接器,消除手动配置依赖的复杂性,使开发和运维人员能够快速部署支持Swift数据访问的Spark环境,专注于数据处理逻辑而非连接配置。
通过以下命令启动镜像,替换环境变量为实际Swift认证信息和Spark配置:
bashdocker run -d \ -e SWIFT_AUTH_URL="https://your-keystone-auth-url/v3" \ -e SWIFT_USERNAME="spark-service-account" \ -e SWIFT_PASSWORD="secure-auth-password" \ -e SWIFT_TENANT_NAME="service-tenant" \ -e SPARK_MASTER="local[*]" \ --name spark-swift-connector \ apache-spark-connect-swift:latest
创建docker-compose.yml文件实现多容器协同部署:
yamlversion: '3.8' services: spark-swift: image: apache-spark-connect-swift:latest container_name: spark-swift-connector environment: - SWIFT_AUTH_URL=https://keystone.example.com/v3 - SWIFT_USERNAME=spark-user - SWIFT_PASSWORD=P@ssw0rd123 - SWIFT_TENANT_NAME=analytics-tenant - SWIFT_REGION=RegionOne - SPARK_MASTER=spark://spark-master:7077 - SPARK_EXECUTOR_MEMORY=2g - SPARK_DRIVER_MEMORY=1g volumes: - ./spark-jobs:/opt/spark/jobs # 挂载本地Spark作业目录 - ./spark-logs:/var/log/spark # 挂载日志目录 depends_on: - spark-master restart: unless-stopped spark-master: image: bitnami/spark:latest container_name: spark-master environment: - SPARK_MODE=master ports: - "7077:7077" - "8080:8080"
启动命令:docker-compose up -d
| 环境变量名 | 描述 | 示例值 |
|---|---|---|
SWIFT_AUTH_URL | Swift认证服务URL | https://keystone.example.com/v3 |
SWIFT_USERNAME | Swift访问用户名 | spark-service-account |
SWIFT_PASSWORD | Swift用户认证密码 | secure-password-123 |
SWIFT_TENANT_NAME | Swift租户名称(Keystone v2) | analytics-tenant |
SPARK_MASTER | Spark集群Master地址 | local[*]或spark://master:7077 |
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
SWIFT_REGION | Swift存储区域 | RegionOne |
SWIFT_CONTAINER | 默认Swift容器名称 | spark-data |
SPARK_EXECUTOR_MEMORY | Spark执行器内存配置 | 1g |
SPARK_DRIVER_MEMORY | Spark驱动程序内存配置 | 512m |
SPARK_APP_NAME | Spark应用名称标识 | spark-swift-connector-app |
进入运行中的容器:
bashdocker exec -it spark-swift-connector bash
启动Spark Shell:
bashspark-shell
读取Swift中的CSV文件(假设Swift容器data-container中有user-data.csv):
scalaval df = spark.read .format("csv") .option("header", "true") .option("inferSchema", "true") .load("swift2d://data-container.swift/user-data.csv") // 显示数据 df.show(10)
写入数据到Swift:
scaladf.write .format("parquet") .mode("overwrite") .save("swift2d://data-container.swift/processed-user-data")
注意:
swift2d为连接器协议标识,具体协议名称可能因连接器版本不同略有差异,需参考镜像内置连接器文档。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


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