Как сделать деплой .net core в yandex.cloud serverless Container?

Пытаюсь сделать деплой проекта в яндекс-облако.
У них есть уровень нетарифицируемого использования и для мини-проекта это, кажется, подойдёт.

Шаги:
1. Завёл Яндекс-Облако и Razor Pages App.

2. VS сгенерировала dockerfile. В локальном докере работает
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["Public.WebStore/Public.WebStore.csproj", "Public.WebStore/"]
RUN dotnet restore "Public.WebStore/Public.WebStore.csproj"
COPY . .
WORKDIR "/src/Public.WebStore"
RUN dotnet build "Public.WebStore.csproj" -c Debug -o /app/build

FROM build AS publish
RUN dotnet publish "Public.WebStore.csproj" -c Debug -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Public.WebStore.dll"]


3. Создал Container Registry
62cb810adaa14272445895.png

4. Сделал Publish образа вот по этой инструкции: https://youtu.be/L3Vk67XBRo0

6. Создал Serverless Container
62cb80329b095271114547.png

7. Открываю получившийся образ и вижу в браузере вот такой результат:
{"errorMessage":"user container finished with error: signal: aborted","errorType":"UserCodeError"}

Если публиковать не в Yandex Serverless Container, а в виртуальную машину Compute Cloud, то всё работает. Но это сильно дороже, чем serverless.

Предложение-вопрос:
Давайте сделаем инструкцию, как задеплоить RazorPages проект в Yandex Serverless Container. Кто-нибудь это уже делал? Давайте попробуем. Призываю, в т.ч., специалистов Яндекса.
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы