kubekey/docs/zh/modules/image.md
zuoxuesong-worker c66b9d0b7a
feat: change image pull auth args (#2780)
feat: change image pull auth args



feat: change image pull auth args



feat: change image pull auth args



feat: change image pull auth args



feat: feat ssh connect exec sudo error with non-root user



feat: feat ssh connect exec sudo error with non-root user



feat: change image pull auth args

Signed-off-by: xuesongzuo@yunify.com <xuesongzuo@yunify.com>
2025-09-29 10:59:06 +08:00

2.9 KiB

image 模块

image模块允许用户下载镜像到本地目录或上传镜像到远程目录。

参数

参数 说明 类型 必填 默认值
pull 把镜像从远程仓库中拉取到本地目录 map -
pull.images_dir 镜像存放的本地目录 字符串 -
pull.manifests 需要拉取的镜像列表 字符串数组 -
pull.auths 远程仓库的认证信息 Object数组 -
pull.auths.repo 用于认证远程仓库的地址 字符串 -
pull.auths.username 用于认证远程仓库的用户名 字符串 -
pull.auths.password 用于认证远程仓库的密码 字符串 -
pull.platform 镜像的架构信息 字符串 -
pull.skip_tls_verify 是否跳过远程仓库的tls认证 bool -
push 从本地目录中推送镜像到远程仓库 map -
push.images_dir 镜像存放的本地目录 字符串 -
push.username 用于认证远程仓库的用户 字符串 -
push.password 用于认证远程仓库的密码 字符串 -
push.skip_tls_verify 是否跳过远程仓库的tls认证 bool -
push.src_pattern 正则表达式,过滤本地目录中存放的镜像 map -
push.dest 模版语法,从本地目录镜像推送到的远程仓库镜像 map -

每个本地目录存放的镜像对应一个dest镜像。

|-- images_dir/
|   |-- registry1/
|   |   |-- image1/
|   |   |   |-- manifests/
|   |   |   |   |-- reference
|   |   |-- image2/
|   |   |   |-- manifests/
|   |   |   |   |-- reference
|   |-- registry2/
|   |   |-- image1/
|   |   |   |-- manifests/
|   |   |   |   |-- reference

对于每个src镜像对应有一个dest。dest中有如下默认的模板变量 {{ .module.image.src.reference.registry }}: 本地目录中单个镜像的registry {{ .module.image.src.reference.repository }}: 本地目录中单个镜像的repository {{ .module.image.src.reference.reference }}: 本地目录中单个镜像的reference

使用示例

  1. 拉取镜像
- name: pull images
  image:
    pull:
      images_dir: /tmp/images/
      platform: linux/amd64
      manifests:
       - "docker.io/kubesphere/ks-apiserver:v4.1.3"
       - "docker.io/kubesphere/ks-controller-manager:v4.1.3"
       - "docker.io/kubesphere/ks-console:3.19"
  1. 推送镜像到远程仓库
- name: push images
  push:
    images_dir: /tmp/images/
    dest: hub.kubekey/{{ .module.image.src.reference.repository }}:{{ .module.image.src.reference.reference }}

即: docker.io/kubesphere/ks-apiserver:v4.1.3 => hub.kubekey/kubesphere/ks-apiserver:v4.1.3 docker.io/kubesphere/ks-controller-manager:v4.1.3 => hub.kubekey/kubesphere/ks-controller-manager:v4.1.3 docker.io/kubesphere/ks-console:3.19 => hub.kubekey/kubesphere/ks-console:v4.1.3