我正在关注本教程:https://cloud.google.com/kubernetes-engine/docs/tutorials/hello-app for Google Cloud Platform。我正在使用Google Cloud Shell命令行。当我走到一步: 要构建此应用程序的容器映像并将其标记为要上传,请运行以下命令:
docker build -t gcr.io/${PROJECT_ID}/hello-app:v1 .
我得到一个错误:
invalid argument "gcr.io//hello-app:v1" for "-t, --tag" flag: invalid reference format
请记住,我已经有3个实例集群(从Kubernetes Engine创建)和一个自己创建的VM实例,存在于我的VM实例中,该实例是根据先前的教程创建的。不知道这是否与错误有关。 预先感谢。
答案 0 :(得分:2)
我在运行时也遇到了相同的错误
docker build -t gcr.io/${PROJECT_ID}/hello-app:v1 .
但是将其更改为(我的PROJECT_ID是deepworld123)
docker build -t gcr.io/deepworld123/hello-app:v1 .
为我修复了它。即使我确实设置了PROJECT_ID = deepworld123。
答案 1 :(得分:1)
您错过了设置PROJECT_ID
。在链接到该教程的“开始之前”部分中,您可以运行
gcloud config set project [PROJECT_ID]
然后在步骤1中运行
export PROJECT_ID="$(gcloud config get-value project -q)"
在这两个命令之后,您应该正确设置shell变量。
答案 2 :(得分:0)
您的教程链接不起作用(它是指向GCP仪表板的链接,而不是教程),但是大概有一个步骤应该设置PROJECT_ID
变量,而您跳过了该变量。错误消息在命令中出现${PROJECT_ID}
的两个斜杠之间没有显示任何内容。
答案 3 :(得分:0)
有一个非常相似的问题,涉及PROJECT_ID
设置不正确。该解决方案必须按照错误消息所述处理格式。
我的PROJECT_ID
字符串具有以下格式companyname.com:companyname-1
:按照我接受的答案中的所有步骤操作后,错误消息是相同的。
事实证明,:
需要替换为/
。最终的gcr.io
字符串如下:
gcr.io/companyname.com/companyname-1/hello-app:v1