1.4. 对 OCI registry 进行身份验证
在将签名推送到 OCI Registry 之前,集群管理员必须配置 Tekton 链,以便与 registry 进行身份验证。Tekton Chains 控制器使用与任务运行相同的服务帐户。要设置具有所需凭证(push)到 OCI registry 的服务帐户,请执行以下步骤:
流程
- 设置 Kubernetes 服务帐户的命名空间和名称。 - export NAMESPACE=<namespace> export SERVICE_ACCOUNT_NAME=<service_account> - $ export NAMESPACE=<namespace>- 1 - $ export SERVICE_ACCOUNT_NAME=<service_account>- 2 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建 Kubernetes secret。 - oc create secret registry-credentials \ --from-file=.dockerconfigjson \ --type=kubernetes.io/dockerconfigjson \ -n $NAMESPACE - $ oc create secret registry-credentials \ --from-file=.dockerconfigjson \- 1 - --type=kubernetes.io/dockerconfigjson \ -n $NAMESPACE- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- 使用 Docker 配置文件的路径替换。默认路径为~/.docker/config.json。
 
- 授予服务帐户对 secret 的访问权限。 - oc patch serviceaccount $SERVICE_ACCOUNT_NAME \ -p "{\"imagePullSecrets\": [{\"name\": \"registry-credentials\"}]}" -n $NAMESPACE- $ oc patch serviceaccount $SERVICE_ACCOUNT_NAME \ -p "{\"imagePullSecrets\": [{\"name\": \"registry-credentials\"}]}" -n $NAMESPACE- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 如果对 Red Hat OpenShift Pipelines 分配到所有任务的默认 - pipeline服务帐户进行补丁,Red Hat OpenShift Pipelines Operator 将覆盖服务帐户。作为最佳实践,您可以执行以下步骤:- 创建单独的服务帐户,以分配给用户的任务运行。 - oc create serviceaccount <service_account_name> - $ oc create serviceaccount <service_account_name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 通过设置任务运行模板中的 - serviceaccountname字段的值,将服务帐户关联到运行任务。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- 使用新创建的服务帐户的名称替换。