使用短期令牌将Docker映像推送到GCP

时间:2018-12-18 01:17:31

标签: json docker authentication google-cloud-platform google-kubernetes-engine

我在处理过程中有一个服务帐户和关键json文件内容。尝试生成“ docker gcr.io/my-project/my-image”以将图像上传到容器注册表。

我尝试了Advanced Authentication tutorial中的docker login -u _json_key -p "$(cat keyfile.json)" https://[HOSTNAME],它在登录期间返回成功,但是docker push仍然返回错误:

You do not currently have an active account selected.
Please run:

  $ gcloud auth login

理想情况下,我想在不配置gcloud SDK的情况下触发docker push。也不想将关键的json内容存储到文件中。我想将其保存在进程内存中。

1 个答案:

答案 0 :(得分:2)

为docker客户端18.03和更高版本运行的正确命令是docker login -u _json_key -p "$(cat keyfile.json)" https://[HOSTNAME]

如果您阅读命令for older Docker clients的详细信息,则会提及no viable conversion from returned value of type 'basic_istream<char, std::__1::char_traits<char> >' to function return type 'bool' return (getline(fin,buf)) ,例如好几年了这不是今天要运行的正确命令。

随着不断的改进,新功能,Kubernetes等,您不想运行旧命令或配置。

gcloud auth configure-docker