You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ArgoCD入门教程添加示例应用报x509证书错误问题

问题根因
  • HTTPS连接GitHub报x509证书不匹配:集群出口Traefik代理/网关错误拦截了发往github.com的出站请求,返回Traefik自身默认自签证书(签发域为*.traefik.default后缀),ArgoCD校验GitHub域名证书时匹配失败,和ArgoCD本身逻辑无关。
  • SSH连接报/tmp目录错误:ArgoCD的repo-server组件拉取Git仓库时,需要在系统临时目录初始化仓库副本,当前部署的repo-server要么被Pod安全策略、安全上下文限制了/tmp目录写入权限,要么/tmp目录挂载异常。
解决方案

优先修复HTTPS连接问题(推荐)

  1. 排查集群出口网关、Traefik转发规则、全局代理配置,取消对github.com地址的拦截,确保ArgoCD所在命名空间的Pod可以直接连通GitHub 443端口,不经过Traefik默认证书的代理层。
  2. 如果集群强制要求走代理访问公网,将代理的根CA证书通过ConfigMap挂载到argocd-repo-server、argocd-server两个组件的/etc/ssl/certs目录下,重启对应Pod加载受信证书即可。
  3. 临时测试方案(禁止生产环境使用):给repo-server添加跳过TLS校验的启动参数,执行以下命令更新部署:
kubectl patch deployment argocd-repo-server -n argocd --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value":"--insecure-skip-server-verification"}]'

等待Pod滚动重启完成后,重新执行创建应用的命令即可。

修复SSH连接的临时目录问题

如果选择SSH方式连接仓库,先解决/tmp目录权限报错:

  1. 检查argocd-repo-server的Pod安全上下文配置,确认运行用户对/tmp目录有读写权限,不要将/tmp设置为只读挂载。
  2. 如果集群启用了受限Pod安全策略,给repo-server添加emptyDir类型的/tmp卷挂载,在部署配置中添加如下字段:
spec:
  template:
    spec:
      volumes:
      - name: tmp-dir
        emptyDir: {}
      containers:
      - name: argocd-repo-server
        volumeMounts:
        - name: tmp-dir
          mountPath: /tmp
  1. 等待repo-server Pod重启完成后,再重新通过SSH方式添加仓库、创建应用。

内容的提问来源于stack exchange,提问作者prrlvr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 00:33:32