我正在使用wercker。
我正在尝试在内部/ docker-push中为GCR推送容器。
但是错误消息显示为belog:
Error interacting with this repository: gcr.io/my-gcr-project/wercker PUT https://gcr.io/v1/repositories/my-gcr-project/wercker/ returned 401
我的wercker.yml是
steps:
- internal/docker-push:
username: _json_key
password: $GCR_JSON_KEY_FILE
registry: https://gcr.io
repository: gcr.io/my-gcr-project/my-image-name
tag: test
AND $ GCR_JSON_KEY_FILE是Wercker环境变量
设置如下:
(值被屏蔽。)
GCR_JSON_KEY_FILE:
{
"type": "",
"project_id": "",
"private_key_id": "",
"private_key": "",
"client_email": "",
"client_id": "",
"auth_uri": "",
"token_uri": "",
"auth_provider_x509_cert_url": "",
"client_x509_cert_url": ""
}
我该怎么办?
最佳答案
从Google Cloud Console下载JSON密钥文件后,将其打开并删除空白。将其保留为单行JSON。如果将其粘贴在Wercker GUI中,则会被'\ n'污染,并且GCR身份验证将失败。