Google cloud platform 无效参数";gcr.io//hello app:v1“;至于-t、 --标签“标签”;标志:无效的引用格式
我遵循本教程:针对谷歌云平台。我正在使用googlecloudshell命令行。当我走到台阶上时: 要生成此应用程序的容器映像并将其标记为上载,请运行以下命令:Google cloud platform 无效参数";gcr.io//hello app:v1“;至于-t、 --标签“标签”;标志:无效的引用格式,google-cloud-platform,google-kubernetes-engine,Google Cloud Platform,Google Kubernetes Engine,我遵循本教程:针对谷歌云平台。我正在使用googlecloudshell命令行。当我走到台阶上时: 要生成此应用程序的容器映像并将其标记为上载,请运行以下命令: 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个集群实例(从Ku
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引擎创建)和一个独立创建的VM实例,它们存在于我的VM实例中,是根据以前的教程创建的。不确定这是否与错误有关。
提前感谢。您的教程链接不起作用(它是指向GCP仪表板的链接,而不是教程),但可能有一个步骤您应该设置
项目ID
变量,您跳过了该步骤。错误消息在命令中出现${PROJECT\u ID}
的两个斜杠之间不显示任何内容。您没有设置PROJECT\u ID
。在教程的“开始前”部分中,您链接到该教程,然后运行该教程
gcloud config set project [PROJECT_ID]
然后在步骤1中运行
export PROJECT_ID="$(gcloud config get-value project -q)"
在这两个命令之后,应该正确设置shell变量 我在运行时也遇到了同样的错误
docker build -t gcr.io/${PROJECT_ID}/hello-app:v1 .
但将其更改为(我的项目号是deepworld123)
帮我修好了。即使我设置了PROJECT_ID=deepworld123 有一个非常类似的问题,涉及
项目ID
设置不正确。解决方案必须按照错误消息所述处理格式化
我的PROJECT\u ID
字符串的格式如下companyname.com:companyname-1
在我按照接受的答案中的所有步骤操作后,错误消息是相同的
结果是:
需要替换为/
。最后的gcr.io
字符串如下所示:
gcr.io/companyname.com/companyname-1/hello app:v1
抱歉,我想我复制了它,但粘贴功能不起作用,而是保留了以前的副本。我应该仔细检查一下。我现在改了。顺便说一下,是这个链接:谢谢,罗伯特。我确实错过了那一步。愚蠢的错误。在重新执行所有步骤之后,我在同一步骤中得到了一个不同的错误—构建容器映像:无法准备上下文:无法评估Dockerfile路径中的符号链接:lstat/home/hazzaldo2/Dockerfi le:没有这样的文件或目录
奇怪。我刚刚在一个新项目中创建了一个全新的云shell,所有步骤对我来说都很好。唯一看起来奇怪的是dockerfile
中的空格(除非那是一个奇怪粘贴的换行符)。如果运行ls/home/hazzaldo2/Dockerfile
会返回什么?感谢您的回复。当我运行ls/home/hazzaldo2/Dockerfile
时,我得到:ls:无法访问“/home/hazzaldo2/Dockerfile”:没有这样的文件或目录
。如果我自己运行ls
,我会得到:README cloudshell.txt
。我不确定它是在GCP中查找我的项目中的当前目录,还是在其他地方查找?如果是这样的话,如何在GCP中访问我的项目中的目录树?在您git克隆之后https://github.com/GoogleCloudPlatform/kubernetes-engine-samples
确保将cd放入创建的目录中,该目录将包含Dockerfile
。这是您将用于创建图像的文件。如果您从主目录运行docker build
,您将没有docker文件,docker也不知道您要构建什么。哦,天哪。。。我刚刚意识到我错在哪里了。当我从Github克隆了kubernetes引擎示例
项目时,我是在本地机器上而不是在gcloud外壳上完成的。我本能地这么做了,因为我习惯于在我的机器上本地克隆项目。对我来说,在云上做任何事情都是一个新概念,包括克隆项目。很抱歉这样愚蠢的错误。非常感谢你的帮助。
docker build -t gcr.io/deepworld123/hello-app:v1 .