本文发布于Cylon的收藏册,转载请著名原文链接~
创建服务账户
首先可以到「 IAM管理 -> 服务帐户」新增帐户。在新增完成后,会得到一把 key,将它下载后请妥善保管,因为所有相关的身份认证都会用到,这个 key 在下载后就无法继续下载了。
授权
接着到「IAM -> 新增」成员,并且选择角色,这里选择「Cloud Storage -> 储存空间物件检视者」,让此帐户具备有 read(读取) storage 的功能。
登录
cat KEY-FILE | docker login -u KEY-TYPE --password-stdin \
https://LOCATION-docker.pkg.dev
GCP 的 KEY-TYPE 通为 json_key
,但这里包含两种类型 _json_key
和 _json_key_base64
KEY-FILE 就是下载的 Service account key 的文件
cat KEY-FILE | docker login -u _json_key --password-stdin \
https://LOCATION-docker.pkg.dev
通常 Service account key 文件内容如下
{
"type": "service_account",
"project_id": "project2024-0101",
"private_key_id": "bdfsd612779509406bb8452c3ek12d730ed547e722d",
"private_key": "-----BEGIN PRIVATE KEY----....-----END PRIVATE KEY-----\n",
"client_email": "gcr@project2024-0101.iam.gserviceaccount.com",
"client_id": "206651723512339084907274",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/manager-image%40project2024-0101.iam.gserviceaccount.com",
"universe_domain": "googleapis.com"
}
本文发布于Cylon的收藏册,转载请著名原文链接~
链接:https://www.oomkill.com/2024/06/docker-push-gcr/
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」 许可协议进行许可。