如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本Argo CD Docker镜像包含使用Sops加密Helm值文件所需的工具,基于原生Argo CD镜像构建,额外集成了加密/解密相关组件,旨在简化Argo CD环境中加密Helm值文件的管理流程。
valueFiles、values等原生Helm功能,无需配置自定义工具链。/app/config/gpg/privkey.asc的GPG私钥(若存在)。适用于需要在Argo CD中安全管理敏感配置的场景,尤其是通过Sops加密Helm值文件的场景。支持以下加密方式:
适用于Kubernetes环境中需通过Argo CD部署包含敏感信息应用的团队或项目。
参考https://github.com/camptocamp/helm-sops%E5%BC%80%E5%A7%8B%E4%BD%BF%E7%94%A8Sops%E5%8A%A0%E5%AF%86Helm%E5%80%BC%E6%96%87%E4%BB%B6%E3%80%82
4.2.1 使用自定义镜像
通过https://github.com/argoproj/argo-helm/tree/master/charts/argo-cd%E9%83%A8%E7%BD%B2%E6%97%B6%EF%BC%8C%E9%9C%80%E5%9C%A8chart%E5%80%BC%E6%96%87%E4%BB%B6%E4%B8%AD%E6%8C%87%E5%AE%9A%E6%9C%AC%E9%95%9C%E5%83%8F%EF%BC%9A
yamlglobal: image: repository: "camptocamp/argocd" tag: "v2.11.3_c2c.1" # 请使用最新镜像标签
4.2.2 配置GPG密钥(Sops集成)
如需使用GPG密钥进行Sops解密,需在chart值文件中添加以下配置:
yamlglobal: securityContext: fsGroup: 2000 # 确保容器有权限访问密钥文件 repoServer: volumes: - name: "gpg-private-key" secret: secretName: "argocd-secret" items: - key: "gpg.privkey.asc" path: "privkey.asc" defaultMode: 0600 # 限制密钥文件权限为仅所有者可读 volumeMounts: - name: "gpg-private-key" mountPath: "/app/config/gpg/privkey.asc" # GPG私钥必须挂载至此路径 subPath: "privkey.asc"
将GPG私钥导入argocd-secret(通过加密值文件配置):
gpg --export-secret-keys --armor <密钥ID>yamlconfigs: secret: extra: gpg.privkey.asc: | -----BEGIN PGP PRIVATE KEY BLOCK----- ... # 此处填入导出的GPG私钥内容 -----END PGP PRIVATE KEY BLOCK-----
4.2.3 配置AWS KMS密钥(Sops集成)
若使用AWS KMS密钥且无法通过IAM实例配置文件授权,需在chart值文件中添加以下配置:
yamlrepoServer: env: - name: "AWS_ACCESS_KEY_ID" valueFrom: secretKeyRef: name: "argocd-secret" key: "aws.accessKeyId" - name: "AWS_SECRET_ACCESS_KEY" valueFrom: secretKeyRef: name: "argocd-secret" key: "aws.secretAccessKey"
创建专用IAM访问密钥,并在加密值文件中添加:
yamlconfigs: secret: extra: aws.accessKeyId: <Access Key ID> # 替换为实际Access Key ID aws.secretAccessKey: <Secret Access Key> # 替换为实际Secret Access Key
4.2.4 配置AGE密钥(Sops集成)
生成AGE密钥:
bashage-keygen -o key.txt
配置Argo CD:在chart值文件中添加以下配置:
yamlrepoServer: env: - name: SOPS_AGE_KEY_FILE value: /app/config/age/keys.txt # AGE密钥文件路径 volumeMounts: - mountPath: /app/config/age/keys.txt name: sops-age subPath: keys.txt volumes: - name: sops-age secret: defaultMode: 420 # 权限0644 items: - key: keys.txt path: keys.txt secretName: argocd-secret
将AGE密钥添加至argocd-secret(通过加密值文件):
yamlconfigs: secret: extra: keys.txt: | ... # 填入key.txt文件内容(AGE密钥)
包含示例应用及对应Argo CD部署配置的示例仓库可参考:https://github.com/camptocamp/argocd-helm-sops-example%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



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