Docker Push 后处理器

原文


类型:docker-push

Packer Docker Push 后处理器从 docker-import 后处理器获取制品并将其推送到 Docker Registry。

配置

该后处理器所有参数均为可选:

  • aws_access_key(string)- 用于与 AWS 通信的 AWS 访问密钥。了解如何设置
  • aws_secret_key (string) - 用于与 AWS 通信的 AWS 密钥。了解如何设置
  • aws_token(string)- 要使用的 AWS 访问令牌。这与 aws_access_keyaws_secret_key 不同。如果您不确定这是什么,那么您可能不需要它。也可以从 AWS_SESSION_TOKEN 环境变量中读取。
  • aws_profile(string)- 用于与 AWS 通信的 AWS 共享凭证配置文件。了解如何设置
  • ecr_login (bool) - 默认为 false。如果为 true,则后处理器将登录 ECR 以便将镜像推送到 Amazon EC2 容器注册表 (ECR)。后处理器仅在推送期间登录。如果为 true 那么必须配置 login_server,且 loginlogin_usernamelogin_password 参数将被忽略。
  • aws_force_use_public_ecr(bool)- 默认为 false。如果为 true,后处理器将尝试强制将镜像推送到 ECR Public Gallery。但是,如果您在 login_server 参数中已经指了定正确的 ECR Public URL,则此参数是可选的,后处理器将自动将自动将其认定为 ECR Public。
  • keep_input_artifact (boolean) - 如果为 true,则将 Docker 镜像推送到云端后不删除它。默认为 true,但如果不需要保存 Docker 镜像的本地副本,可以设置为 false
  • platform (string) - 如果服务器支持多平台,则设置平台参数。
  • login(bool)- 默认为 false。如果为 true,则后处理器将在推送之前登录。登录 ECR 的信息请参阅 ecr_login
  • login_username(string)- 用于验证登录的用户名。
  • login_password(string)- 用于验证登录的密码。
  • login_server (string) - 要登录的服务器地址。

注意:如果使用 Docker Hub 或是 Quay 作为镜像仓库,login 参数必须设置为 true,且 login_usernamelogin_password 必须设置为你使用的镜像仓库的凭证。当使用 Docker Hub 时,login_server 参数可以忽略。

注意:如果您使用上述凭据登录,后处理器随后会自动将您注销(仅指定的服务器)。

使用示例

Json:

{
  "post-processors": [
    [
      {
        "type": "docker-import",
        "repository": "myrepo/myimage",
        "tag": "0.7"
      },
      {
        "type": "docker-push"
      }
    ]
  ]
}

HCL2:

post-processors {
  post-processor "docker-import" {
    repository =  "myrepo/myimage"
      tag = "0.7"
    }
  post-processor "docker-push" {}
}

results matching ""

    No results matching ""