Невозможно запустить приложение .NET Core в Linux в службах приложений Azure с linuxFxVersion: «DOTNETCORE:8.0»

Когда я определяю свое приложение .NET Core для запуска в Linux в службах приложений Azure с помощью linuxFxVersion: 'DOTNETCORE:8.0' и reserved: true, я продолжаю получать ответы HTTP 404 от Nginx.

Приложение отлично работает в Windows в службах приложений Azure.

Глядя на журналы, кажется, что службы приложений загружают образ PHP, который выводит версию PHP 8.0.x.

Кто-нибудь сталкивался с чем-то подобным и знает, как это исправить?

Код:

resource appServicePlan 'Microsoft.Web/serverfarms@2022-03-01' = {
  name: appServicePlanName
  location: location
  sku: environmentConfigurationMap[environment].appServicePlan.sku
  properties: {
    reserved: true
  }
  kind: 'linux'
}

resource appServiceApp 'Microsoft.Web/sites@2022-03-01' = {
  name: appServiceAppName
  location: location
  identity: { type: 'SystemAssigned' }
  properties: {
    serverFarmId: appServicePlan.id
    httpsOnly: true
    siteConfig: {
      linuxFxVersion: 'DOTNETCORE:8.0'
      // netFrameworkVersion: 'v8.0'
      appSettings: [
        {
          name: 'APPINSIGHTS_INSTRUMENTATIONKEY'
          value: applicationInsights.properties.InstrumentationKey
        }
        {
          name: 'APPLICATIONINSIGHTS_CONNECTION_STRING'
          value: applicationInsights.properties.ConnectionString
        }
      ]
    }
  }
}

Ошибка:

Попробуйте DOTNETCORE|8.0 вместо DOTNETCORE:8.0?

Rui Jarimba 11.07.2024 14:35

@RuiJarimba Спасибо за ваше предложение. Но не следует ли мне использовать вывод значения с помощью az webapp list-runtimes --os-type linux? В таком случае могу уточнить DOTNETCORE:[6-8].0

Shuzheng 11.07.2024 15:21

Попробуйте. Я видел несколько сообщений, где люди используют синтаксис DOTNETCORE|x.x.

Rui Jarimba 11.07.2024 15:28

@RuiJarimba Это сработало! Мне даже разрешено устанавливать произвольные значения для стека времени выполнения: az webapp config set --name todo-app-rbqkyp2g5zxmq --resource-group todoapptest --linux-fx-version 'DOTNETFOO:4.0'

Shuzheng 11.07.2024 15:47

@RuiJarimba Где документированы эти значения, если Azure сама их не документирует? ИМХО, это очень грязно. Нет проверки ввода, Azure CLI не выводит реальные значения,...

Shuzheng 11.07.2024 15:48

Честно говоря, мне не удалось найти официальную документацию Microsoft по этому параметру.

Rui Jarimba 11.07.2024 15:49

Но учитывая, что это корпоративный сервис Azure, как другие будут искать правильные значения времени выполнения? Они раскрываются в случайных сообщениях в блогах, или?

Shuzheng 11.07.2024 15:56

Может быть, правильные значения можно «перепроектировать» из веб-источника портала Azure?

Shuzheng 11.07.2024 15:56

На самом деле документация по команде az webapp config set показывает правильный синтаксис для каждого стека среды выполнения, даже несмотря на то, что она не отображает все допустимые версии для каждого из них: --linux-fx-version - The runtime stack used for your linux-based webapp, e.g., "RUBY|2.5.5", "NODE|12LTS", "PHP|7.2", "DOTNETCORE|2.1"

Rui Jarimba 11.07.2024 16:00

Спасибо. Тогда az webapp list-runtimes надо исправлять :)

Shuzheng 11.07.2024 16:08
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
10
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Правильный синтаксис для установки версии .NET в linuxFxVersionDOTNETCORE|x.x, даже для .NET 6 или .NET 8.

Итак, вместо:

DOTNETCORE:8.0

Использовать:

DOTNETCORE|8.0

Другие вопросы по теме