Manifest 插件

这个插件可以为多架构Docker镜像推送清单。下面的流水线配置演示了简单的用法:

pipeline:
  manifest:
    image: plugins/manifest
    settings:
      username: kevinbacon
      password: pa55word
      target: foo/bar:v1.0.0
      template: foo/bar:v1.0.0-OS-ARCH
      platforms:
        - linux/amd64
        - linux/arm
        - linux/arm64

使用模板的清单:

pipeline:
  manifest:
    image: plugins/manifest
    settings:
      username: kevinbacon
      password: pa55word
      spec: manifest.tmpl

忽略丢失的镜像:

pipeline:
  manifest:
    image: plugins/manifest
    settings:
      username: kevinbacon
      password: pa55word
      target: foo/bar:v1.0.0
      template: foo/bar:v1.0.0-OS-ARCH
      platforms:
        - linux/amd64
        - linux/arm
        - linux/arm64
      ignore_missing: true

使用命名机密的配置示例:

pipeline:
  manifest:
    image: plugins/manifest
    settings:
      username:
        from_secret: docker_username
      password:
        from_secret: docker_password
      target: foo/bar:v1.0.0
      template: foo/bar:v1.0.0-OS-ARCH
      platforms:
        - linux/amd64
        - linux/arm
        - linux/arm64

参数介绍

username : DockerHub身份验证的用户名(跳过匿名访问)

password : DockerHub身份验证的密码(跳过匿名访问)

insecure : 启用不安全(非TLS)注册表支持

platforms : 平台列表,格式为OS/ARCH

target : 清单的目标镜像

template : 替换了清单源、OS和ARCH的模板

spec : 清单规范文件的路径

ignore_missing : 忽略丢失的源镜像

tag, tags : 标记列表,仅在spec中使用

default_tags, auto_tag : 使用默认/自动标记,如Docker插件,仅在spec中使用