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

如何为K3s内置containerd配置私有HTTPS镜像仓库自签名证书?

解决K3s内置containerd访问自签名证书私有镜像仓库的问题

步骤1:确认证书文件的正确性与权限

  • 确保ca.crt是私有仓库的自签名根证书,不要误传仓库的服务器证书
  • 设置证书及目录权限,保证containerd进程可正常读取:
    sudo chmod 644 /etc/containerd/certs.d/registry.domain:5000/ca.crt
    sudo chown root:root /etc/containerd/certs.d/registry.domain:5000/ca.crt
    

步骤2:正确配置K3s的containerd(避免配置被覆盖)

K3s会自动生成/var/lib/rancher/k3s/agent/etc/containerd/config.toml,直接修改该文件重启后可能被覆盖,建议通过K3s主配置文件定义参数:

  1. 创建或编辑/etc/rancher/k3s/config.yaml(server节点),添加以下内容:
    containerd:
      config: |
        [plugins."io.containerd.grpc.v1.cri".registry]
          config_path = "/etc/containerd/certs.d"
    
  2. 若为agent节点,在对应节点的/etc/rancher/k3s/config.yaml中添加相同配置。

步骤3:(可选)直接在containerd配置中指定仓库证书

如果通过config_path方式不生效,可直接在配置中单独声明目标仓库的TLS参数,修改/etc/rancher/k3s/config.yaml:

containerd:
  config: |
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry.domain:5000"]
      endpoint = ["https://registry.domain:5000"]
    [plugins."io.containerd.grpc.v1.cri".registry.configs."registry.domain:5000".tls]
      ca_file = "/etc/containerd/certs.d/registry.domain:5000/ca.crt"

步骤4:重启K3s服务使配置生效

  • Server节点执行:
    sudo systemctl restart k3s
    
  • Agent节点执行:
    sudo systemctl restart k3s-agent
    

步骤5:导入证书到系统根证书池(兜底方案)

若以上配置仍不生效,可将自签名证书导入系统信任池,确保containerd能通过系统证书链验证:

  1. 复制证书到系统证书目录:
    sudo cp /etc/containerd/certs.d/registry.domain:5000/ca.crt /usr/local/share/ca-certificates/registry-domain.crt
    
  2. 更新系统证书:
    sudo update-ca-certificates
    
  3. 再次重启K3s服务。

步骤6:验证配置与排查问题

  • 检查containerd配置是否正确加载:
    cat /var/lib/rancher/k3s/agent/etc/containerd/config.toml | grep -A 5 -B 5 "registry"
    
  • 查看K3s/containerd日志获取细节:
    sudo journalctl -u k3s -f  # server节点
    # 或
    sudo journalctl -u k3s-agent -f  # agent节点
    

内容的提问来源于stack exchange,提问作者nagy.zsolt.hun

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 08:42:19