12.3. 将 Red Hat Quay 配置为使用 AWS STS

使用以下步骤编辑 Red Hat Quay config.yaml 文件以使用 AWS STS。

流程

  1. 更新 Red Hat Quay 的 config.yaml 文件,使其包含以下信息:

    # ...
    DISTRIBUTED_STORAGE_CONFIG:
       default:
        - STSS3Storage
        - sts_role_arn: <role_arn> 1
          s3_bucket: <s3_bucket_name> 2
          storage_path: <storage_path> 3
          sts_user_access_key: <s3_user_access_key> 4
          sts_user_secret_key: <s3_user_secret_key> 5
    # ...
    1
    配置 AWS STS 时需要的唯一 Amazon 资源名称(ARN)
    2
    s3 存储桶的名称。
    3
    数据的存储路径。通常 /datastorage
    4
    配置 AWS STS 时生成的 AWS S3 用户访问密钥。
    5
    配置 AWS STS 时生成的 AWS S3 用户 secret 密钥。
  2. 重启 Red Hat Quay 部署。

验证

  1. 标记示例镜像,如 busybox,它将推送到存储库。例如:

    $ podman tag docker.io/library/busybox <quay-server.example.com>/<organization_name>/busybox:test
  2. 运行以下命令来推送示例镜像:

    $ podman push <quay-server.example.com>/<organization_name>/busybox:test
  3. 导航到您在 Red Hat Quay registry → Tags 中将镜像推送到的 Organization,以验证推送是否成功。
  4. 进入到 Amazon Web Services (AWS)控制台,找到您的 s3 存储桶。
  5. 点 s3 存储桶的名称。
  6. Objects 页面上,单击 datastorage/
  7. datastorage/ 页面中,应该看到以下资源:

    • sha256/
    • 上传/

      这些资源表示推送成功,并且 AWS STS 已被正确配置。