У меня есть служба, созданная в Google Cloud run, которую я могу развернуть вручную через пользовательский интерфейс Google Cloud Console, используя образ в реестре контейнеров. Но развертывание из 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: я обновил SDK с помощью gcloud components update
, но проблема не исчезла.
Вот моя версия SDK
$gcloud version
Google Cloud SDK 270.0.0
beta 2019.05.17
bq 2.0.49
core 2019.11.04
gsutil 4.46
Я использую многоступенчатую сборку докеров. Вот мой 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
gcloud version
? Можете ли вы поделиться своим dockerfile? - person guillaume blaquiere   schedule 05.11.2019ports
пусто иcontainerPort: 80
получает значение. В противном случае поделитесь, пожалуйста, дополнительной информацией о вашей конфигурации. - person sllopis   schedule 05.11.2019gcloud components update
. - person John Hanley   schedule 05.11.2019spec.revisionTemplate.spec.container.ports should be empty
, я обнаружил, что частьcontainer
- это устарел. Кроме того, проверьте свойports
массив, потому что вы могли поместить в него некоторые значения и он должен быть пустым, как указано в сообщении об ошибке. - person sllopis   schedule 06.11.2019ports
можно найти здесь - person sllopis   schedule 06.11.2019