繁体   English   中英

Google Cloud Run 部署无法使用`gcloud` SDK CLI

[英]Google Cloud Run deployment not working using `gcloud` SDK CLI

我在 Google Cloud 运行上创建了一项服务,我可以使用 Container Registry 上的图像通过 Google Cloud Console UI 手动部署该服务。 但是从 CLI 部署失败。 这是我正在使用的命令和我得到的错误。 我无法理解我所缺少的:

$ gcloud beta run deploy service-name --platform managed --region region-name --image image-url
Deploying container to Cloud Run service [service-name] in project [project-name] region [region-name]
X Deploying...
  . Creating Revision...
  . Routing traffic...
Deployment failed
ERROR: (gcloud.beta.run.deploy) INVALID_ARGUMENT: The request has errors
- '@type': type.googleapis.com/google.rpc.BadRequest
  fieldViolations:
  - description: spec.revisionTemplate.spec.container.ports should be empty
    field: spec.revisionTemplate.spec.container.ports

更新 1:我已经使用gcloud components update更新了 SDK ,但我仍然遇到同样的问题

这是我的 SDK 版本

$gcloud version
Google Cloud SDK 270.0.0
beta 2019.05.17
bq 2.0.49
core 2019.11.04
gsutil 4.46

我正在使用多级 docker 构建。 这是我的 Dockerfile:

FROM custom-dev-image

COPY . /project_dir
WORKDIR /project_dir
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 \
  /usr/local/bin/go build -a \
  -ldflags '-w -extldflags "-static"' \
  -o /root/go/bin/executable ./cmds/project/main.go

FROM alpine:3.10
ENV GIN_MODE=release APP_NAME=project_name
COPY --from=0 /root/go/bin/executable /usr/local/bin/
CMD executable

我遇到了同样的问题,我认为这是因为我有较旧的 Cloud Run 部署,该部署是在我运行gcloud components update之前创建的,因为一些更新。

我能够通过删除整个 Cloud Run 服务(通过 GUI)并再次从头开始部署(通过终端)来修复它。 我注意到ports:定义在我这样做后从 YAML 中消失了。

在此之后,我可以正常进行部署。

这是 Cloud Run 中的一个错误。 它已得到修复,现在使用 CLI 进行部署对我有用。 这是我向 Google Cloud 提出的问题的链接,该问题得到了他们的回复 https://issuetracker.google.com/issues/144069696

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM