Развертывание приложения ASP.NET Core в Google App Engine с помощью Mac Visual Studio?

Я запускаю Visual Studio для Mac и пытаюсь развернуть свое основное приложение ASP.NET в своем проекте Google App Engine. Я выполнил шаги, описанные в этом официальном руководстве, но застрял в шаг «Установить облачные инструменты для Visual Studio», так как нет расширения для версии Visual Studio для Mac.

Я также наткнулся на Cloud SDK для Mac и теперь не понимаю, куда идти. Какая связь между этими двумя руководствами и как правильно развернуть проект VS ASP в App Engine на Mac?

ИЗМЕНИТЬ

Файл app.yaml содержит:

runtime: aspnetcore env: flex


person Dinuka Jay    schedule 16.08.2017    source источник
comment
FWIW, это официальное руководство представляет собой руководство по развертыванию на Compute Engine, а не на App Engine...   -  person Dan Cornilescu    schedule 16.08.2017
comment
Тут немного запутался. Какой из них я использую для развертывания моего проекта приложения ASP.NET Core? Я не использовал GAE раньше @DanCornilescu   -  person Dinuka Jay    schedule 16.08.2017
comment
Похоже на ГСЭ. Но в руководстве в разделе «Прежде чем начать с пункта 3» также упоминается, что вам необходимо установить облачный SDK, так что это не «или». Я подозреваю, что VS (через эти облачные инструменты) может использовать облачный SDK под капотом для фактического развертывания. Не могу добавить больше, я нулевой в большинстве вещей MS.   -  person Dan Cornilescu    schedule 16.08.2017
comment
Хорошо отметил. Спасибо @DanCornilescu   -  person Dinuka Jay    schedule 16.08.2017


Ответы (3)


Шаги для развертывания в Google App Engine:

  1. Создайте новый проект ASP .Net в Visual Studio.
  2. Создайте свой проект.
  3. Install Google Cloud SDK: https://cloud.google.com/sdk/.
  4. Запустите следующие команды через терминал, находясь в том же каталоге, что и ваш файл решения VS: gcloud app create dotnet restore dotnet publish -c Debug
  5. Создайте файл app.yaml следующим образом и поместите его в каталог «publish».

    Содержимое файла app.yaml:

    runtime: aspnetcore env: flex

    Путь к каталогу публикации будет следующим: ".../my_vs_project/bin/Debug/netcoreapp2.0/publish"

  6. Запустите следующую команду через терминал, находясь в том же каталоге, что и файл app.yaml:

    gcloud app deploy

person Tyler Gillson    schedule 02.02.2018

Что ж, SDK — это инструмент более низкого уровня для использования и, следовательно, более громоздкий. По сути, «Облачные инструменты для Visual Studio» скрывают сложности использования SDK. Поскольку для VS нет расширения GCP, похоже, что это единственный выбор, который у вас есть, поэтому вам нужно выполнить команды SDK, такие как «создание приложения gcloud» и «развертывание приложения gcloud», чтобы развернуть свой проект в GCP. Я надеюсь, что это полезно.

person mohi    schedule 16.08.2017
comment
Что должен содержать файл app.yaml? Я получил сообщение об ошибке от инструментов SDK, говорящее: «Ваше приложение не удовлетворяет всем требованиям для среды выполнения типа [aspnetcore]». Я обновил ответ своим файлом app.yaml - person Dinuka Jay; 16.08.2017
comment
Файл app.yaml - это вещь GAE :) Опять же - вам нужен GCE в соответствии с этим руководством... - person Dan Cornilescu; 16.08.2017
comment
Если вы на самом деле не просматривали документацию по гибкой среде Google App Engine .NET, что это другой зверь. - person Dan Cornilescu; 16.08.2017
comment
Да, я имел в виду это сейчас. Вау, куда мне идти, ха-ха. Для этого нет четкой документации:/ @DanCornilescu - person Dinuka Jay; 16.08.2017
comment
Вот документ: cloud.google. .com/appengine/docs/flexible/dotnet/ - person mohi; 16.08.2017
comment
@mohi Можете ли вы показать мне образец app.yaml. Это дает мне ту же ошибку, что мой app.yaml неполный и не содержит важной информации. - person Dinuka Jay; 16.08.2017

Примечание. комментарий к другому ответу указывает на то, что путаница возникает из-за того, что вы также смотрите на приложение Google. Документация по гибкой среде Engine .NET.

В общем, GAE — это облачное предложение более высокого уровня, которое может позаботиться о некоторых действиях по обслуживанию простой инфраструктуры виртуальных машин общего назначения, такой как GCE (например, масштабируемость), поэтому вместо этого вы можете больше сосредоточиться на своем приложении.

Но выбор использования GAE или GCE действительно за вами — это зависит от того, как вы хотите создавать и использовать свое приложение. И возможно от того, насколько хорошо они поддерживаются/интегрируются с выбранными вами инструментами (VS в вашем случае).

person Dan Cornilescu    schedule 16.08.2017