如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该镜像为GlusterFS的CSI(Container Storage Interface)驱动实现,专门兼容GD2(GlusterD 2.0)管理的GlusterFS存储集群。CSI驱动作为容器编排平台(如Kubernetes)与存储系统间的标准化接口,可将GlusterFS的分布式存储能力集成到容器环境中,为应用提供持久化存储服务。
--feature-gates=CSINodeInfo=true,CSIDriverRegistry=true)。1. 部署CSI驱动组件
通过Kubernetes YAML清单部署CSI控制器和节点插件(以下为示例,具体清单需根据实际环境调整):
yaml# csi-glusterfs-controller.yaml(控制器组件) apiVersion: apps/v1 kind: StatefulSet metadata: name: csi-glusterfs-controller namespace: kube-system spec: serviceName: "csi-glusterfs" replicas: 1 selector: matchLabels: app: csi-glusterfs-controller template: metadata: labels: app: csi-glusterfs-controller spec: serviceAccountName: csi-glusterfs-controller-sa containers: - name: csi-provisioner image: k8s.gcr.io/sig-storage/csi-provisioner:v3.1.0 args: - "--csi-address=$(ADDRESS)" - "--v=5" env: - name: ADDRESS value: /var/lib/csi/sockets/pluginproxy/csi.sock volumeMounts: - name: socket-dir mountPath: /var/lib/csi/sockets/pluginproxy/ - name: glusterfs-csi-driver image: <镜像名称:标签> # 替换为实际镜像名称 args: - "--endpoint=$(CSI_ENDPOINT)" - "--nodeid=$(NODE_ID)" - "--drivername=glusterfs.csi.k8s.io" env: - name: CSI_ENDPOINT value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock - name: NODE_ID valueFrom: fieldRef: fieldPath: spec.nodeName volumeMounts: - name: socket-dir mountPath: /var/lib/csi/sockets/pluginproxy/ - name: glusterfs-config mountPath: /etc/glusterfs readOnly: true volumes: - name: socket-dir emptyDir: {} - name: glusterfs-config configMap: name: glusterfs-config # 包含GlusterFS集群配置的ConfigMap
2. 创建StorageClass
定义Kubernetes StorageClass,指定CSI驱动及GlusterFS集群参数:
yamlapiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: glusterfs-csi-sc provisioner: glusterfs.csi.k8s.io parameters: resturl: "http://gd2-endpoint:24007" # GD2的REST API地址(多个地址用逗号分隔) restuser: "admin" # GD2管理员用户名(如启用认证) secretName: "glusterfs-secret" # 存储认证信息的Secret名称(如启用认证) secretNamespace: "kube-system" # Secret所在命名空间 volumetype: "replicate:3" # GlusterFS卷类型(如replicate、distribute) reclaimPolicy: Delete # 卷回收策略(Delete/Retain) allowVolumeExpansion: true # 允许卷扩展(需GlusterFS支持)
3. 创建PersistentVolumeClaim(PVC)
通过PVC动态申请存储:
yamlapiVersion: v1 kind: PersistentVolumeClaim metadata: name: glusterfs-csi-pvc spec: accessModes: - ReadWriteMany # GlusterFS支持的访问模式(ReadWriteOnce/ReadWriteMany/ReadOnlyMany) resources: requests: storage: 10Gi # 请求存储容量 storageClassName: glusterfs-csi-sc # 关联上述StorageClass
| 参数名 | 描述 | 示例值 | 是否必填 |
|---|---|---|---|
| resturl | GD2的REST API地址,多个地址用逗号分隔 | [***] | 是 |
| restuser | GD2管理员用户名(如启用认证) | admin | 否 |
| secretName | 存储GD2认证信息的Secret名称 | glusterfs-secret | 否 |
| secretNamespace | Secret所在命名空间 | kube-system | 否 |
| volumetype | GlusterFS卷类型,格式为"类型:副本数" | replicate:3, distribute | 否 |
allowVolumeExpansion后,需确保GlusterFS集群支持卷扩展(如使用thin-arbiter或replicate卷类型)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

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