Построение приложения .NET Core 2.1 в Google Cloud Shell

Я создал приложение ASP.NET Core 2.1 , которое я пытаюсь развернуть в Google Cloud Platform . Он прекрасно работает, используя dotnet buildлокально.

Тем не менее, я не могу его создать через Google Cloud Shell. Выполнение dotnet --versionподтверждает, что в облачной оболочке Google установлен .NET Core 2.0 .

Запуск gcloud app deployинициирует развертывание приложения, но я получаю загадочную ошибку из журнала:

Шаг № 0: Статус: Загружено более новое изображение для gcr.io/gcp-runtimes/aspnetcorebuild@sha256:ad1b788a9b4cca75bb61eb523ef358ca059c4bd208fba15a10ccc6acab83f49a

Шаг № 0: Нет .deps.json файл, найденный для приложения Закончено Шаг # 0

ОШИБКА: выполните шаг 0 "gcr.io/gcp-runtimes/aspnetcorebuild@sha256:ad1b788a9b4cca75bb61eb523ef358ca059c4bd208fba15a10ccc6acab83f49a" не удалось: статус выхода 1

У меня создалось впечатление, что GCP поддерживает контейнеры .NET Core 2.1 по умолчанию, поэтому я не включил Dockerfile .

Я пытаюсь установить в гибкую среду, вот мой app.yamlфайл:

runtime: aspnetcore
env: flex

Нужно ли создавать пользовательский контейнер Docker? Или есть другой способ получить поддержку .NET Core 2.1 в Google Cloud Shell?

Изменить: на данный момент я установил Google Cloud Tools для запуска gcloudв оболочке локально.

asp.net-core,.net-core,google-cloud-platform,google-cloud-shell,

2

Ответов: 2


0

Помните, что Microsoft переключается с aspnetcore на dotnet на образ ядра ядра.
https://hub.docker.com/r/microsoft/dotnet/


0

Я попытался воспроизвести его - действительно, Cloud Shell поддерживает только .NET Core 2.0. Я поднял это с правильными инженерами, так что изображение Cloud Shell обновлено для поддержки .NET Core 2.1.

В это время:

  1. Создайте файл докеров, основанный на этом изображении: gcr.io/google-appengine/aspnetcore:2.1
  2. Попробуйте использовать gcloud builds submit для создания изображения. Когда вы запускаете gcloud builds submit в первый раз, он попросит включить Cloud Build API . Утвердить это. Это не будет использовать локальную команду (например, CloudShell) docker build, а скорее передаст ваши артефакты, которые будут созданы Cloud Build и перенесены в реестр контейнеров.
  3. Разверните приложение AppEngine Flex с развертыванием приложения gcloud , указав --image-url с адресом изображения из реестра контейнеров, когда вы построили его на предыдущем шаге.
asp.net-жильный, .net-жильный, Google-облачной платформы, Google-облака-оболочки,
Похожие вопросы
Яндекс.Метрика