Вчера я установил чистую новую версию сообщества Visual Studio 2022 и создал новый проект со следующим шаблоном проекта: ASP.NET Core Web App (Razor Pages).
После этого я могу успешно создать и отладить веб-приложение локально, но не вношу никаких других изменений в веб-приложение в Visual Studio.
В качестве второго шага я хотел протестировать его развертывание в Microsoft Azure как приложение-контейнер Azure. Поэтому я настроил это через Свойства веб-приложения проекта Visual Studio; подключил свою учетную запись Azure и настроил следующее:
Все это сработало, и я, кажется, смогу опубликовать; честно говоря, я ожидал, что это сработает, поскольку я вообще ничего не настраивал и просто использовал все значения по умолчанию без каких-либо изменений кода в проекте VS, а также настройка публикации была простой (кроме установки имени для решения VS и проекта VS). ).
Теперь, когда я публикую в VS, я получаю следующее всплывающее окно с сообщением об ошибке:
введите сюда описание изображения
К сожалению, журнал ошибок в VS НЕ показывает никаких сообщений об ошибках. Последние строки в консоли сборки:
Сборка: 1 успешна, 0 неудачна, 0 обновлена, 0 пропущена ========== Сборка завершена в 05:49 и заняла 39,045 секунды ========== Публикация: 1 успешно, 0 не удалось, 0 пропущено ========== Публикация завершилась в 05:49 и заняла 39,048 секунды ========== Отправка изображения в приложение-контейнер Ожидание готовности приложения-контейнера... Приложение-контейнер готово.`
Погуглив и исследовав, я попытался найти проблему или хотя бы журнал в Azure. Я обнаружил одно сообщение об ошибке в ресурсе приложения-контейнера Azure, созданном в процессе установки:
Следующие поля недействительны или отсутствуют. Поле «template.containers.mywebname.image» недопустимо с подробностями: «Недопустимое значение: «mynameweb20240616214122.azurecr.io/myname.web:20240617034822»: GET https::MANIFEST_UNKNOWN: манифест с тегом «20240617034800» не найден; карта20240617034800';.
Дальнейшие исследования не привели для меня к решению, и у меня все еще есть та же проблема; даже после удаления всех ресурсов Azure и новой настройки параметров публикации Visual Studio > тот же результат.
Интересно, что в Azure есть ресурс с номером 20240617034822, но НЕ с номером 20240617034800.
Любая помощь приветствуется, спасибо!
В этом очень простом и на 100% готовом случае я ожидал, что смогу публиковать в приложении-контейнере Azure с помощью стандартного веб-приложения Visual Studio ASP.NET Core и иметь возможность успешно развернуть его в Azure.
Включили ли вы поддержку контейнеров при создании Шаблона
Пожалуйста, поделитесь своим файлом Docker один раз.
Боже мой! Огромное спасибо, дорогая @Harshitha! Теперь это так очевидно; да, я НЕ включил поддержку контейнеров при создании шаблона. Включение этого помогло, и теперь я могу выполнить развертывание. Большое спасибо!
Вам необходимо включить поддержку контейнеров при создании шаблона и выбрать сборку контейнера как .NET SDK.
Container Registry
=> Repositories
.ItemGroup
будет включен в .csproj
файл. <ItemGroup>
<ContainerEnvironmentVariable Include = "ASPNETCORE_HTTPS_PORTS">
<Value>8081</Value>
</ContainerEnvironmentVariable>
</ItemGroup>
Выход:
Какую версию Visual Studio вы используете? 17.10 ?