MENU

K3s 私仓接入

September 6, 2023 • 学习,折腾

上一章讲了关于ArgoCD的单点/集群部署,一般在使用时,一定有接入私仓的需求,例如在我个人的工作流中,通常使用Coding作为我的制品库。

K3s默认采用containerd作为容器运行时,这意味着在Docker上配置镜像仓库将不会生效,除非将容器运行时环境设置为Docker。

要配置K3s的registry,需要编辑位于/etc/rancher/k3s/目录下的registries.yaml文件。当K3s启动时,它会检查是否存在这个registries.yaml文件,并告知containerd使用文件中定义的镜像仓库。

默认情况下,服务器节点是可以被调度的,如果没有在服务器节点上设置污点(taint),工作负载将有可能被调度到这些节点上。因此,需要确保在每个服务器节点上都创建了registries.yaml文件,以确保容器Runtime可以访问所需的镜像仓库。

私仓接入

ubuntu@VM-16-16-ubuntu:~$ cat /etc/rancher/k3s/registries.yaml

# mirrors 可以定义多个私有镜像仓库的名称
mirrors:
  "docker.io": # 私仓名称(是名称,而不是地址)
    endpoint:
      - "https://fogjl973.mirror.aliyuncs.com"
      - "https://registry-1.docker.io"

configs:
  "harbor.service.dextecai.com":
    auth:
      username: admin
      password: Harbor@12345
    tls:
      cert_file: /home/ubuntu/harbor.sdn.dextercai.com.cert
      key_file:  /home/ubuntu/harbor.sdn.dextercai.com.key
      ca_file:   /home/ubuntu/ca.crt
Archives QR Code
QR Code for this page
Tipping QR Code