Ошибка развертывания. Net Core 3.1 Web App в Azure Linux Веб-сервис через Azure Devops - PullRequest
1 голос
/ 11 февраля 2020

Мы пытаемся развернуть службу веб-приложений. Net Core 3.1 на Azure, и мы продолжаем сталкиваться с ошибкой, которую не знаем, как ее устранить. Мы внедряем его в План обслуживания приложений (B1) для тестирования, и, похоже, для. Net Core 3.1 мы можем только опубликовать sh "Код" до Linux. Мы развернули это через Visual Studio без каких-либо проблем, но при развертывании через Azure Devops он развертывается успешно, но, похоже, не запускается. Есть несколько ошибок:

  1. Не удалось загрузить / usr / local / lib / php / extensions / no-debug-non-zts-20151012 / opcache: / usr / local / lib / php / extensions / no-debug-non-zts-20151012 / opcache: невозможно открыть файл общего объекта: нет такого файла или каталога

  2. Невозможно служить каталогом / home / site / wwwroot/: Нет соответствующего DirectoryIndex (index. php, index. html, default.htm, default. html, index.htm, index. html, index. php, hostingstart. html) найдено, и сгенерированный сервером индекс каталога запрещен директивой Options

    Вот наш журнал ошибок:

2020-02-11T17:08:00.415853887Z   _____                               
2020-02-11T17:08:00.415890488Z   /  _  \ __________ _________   ____  
2020-02-11T17:08:00.415897789Z  /  /_\  \___   /  |  \_  __ \_/ __ \ 
2020-02-11T17:08:00.415902989Z /    |    \/    /|  |  /|  | \/\  ___/ 
2020-02-11T17:08:00.415907889Z \____|__  /_____ \____/ |__|    \___  >
2020-02-11T17:08:00.415913089Z         \/      \/                  \/ 
2020-02-11T17:08:00.415917789Z A P P   S E R V I C E   O N   L I N U X
2020-02-11T17:08:00.415922690Z 
2020-02-11T17:08:00.415927190Z Documentation: http://aka.ms/webapp-linux
2020-02-11T17:08:00.415931590Z PHP quickstart: https://aka.ms/php-qs
2020-02-11T17:08:00.415936090Z PHP version : 7.0.33
2020-02-11T17:08:00.415940490Z Note: Any data outside '/home' is not persisted
2020-02-11T17:08:00.809232004Z Running oryx -appPath /home/site/wwwroot -output /opt/startup/startup.sh     -bindPort 8080 -startupCommand 'dotnet TestProject.dll; apache2-foreground;'
2020-02-11T17:08:01.052506605Z Oryx Version: 0.2.20191105.2, Commit: 67e159d71419415435cb5d10c05a0f0758ee8809, ReleaseTagName: 20191105.2
2020-02-11T17:08:01.054897394Z Cound not find build manifest file at '/home/site/wwwroot/oryx-manifest.toml'
2020-02-11T17:08:01.055406213Z Could not find operation ID in manifest. Generating an operation id...
2020-02-11T17:08:01.056002335Z Build Operation ID: dfa49d40-fc36-4418-be4c-4886a385fe91
2020-02-11T17:08:02.861636886Z Writing output script to '/opt/startup/startup.sh'
2020-02-11T17:08:03.264793168Z /opt/startup/startup.sh: 7: /opt/startup/startup.sh: dotnet: not found
2020-02-11T17:08:04.221360854Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.16.1.5. Set the 'ServerName' directive globally to suppress this message
2020-02-11T17:08:04.387602773Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.16.1.5. Set the 'ServerName' directive globally to suppress this message
2020-02-11T17:08:04.409543294Z Failed loading /usr/local/lib/php/extensions/no-debug-non-zts-20151012/opcache:  /usr/local/lib/php/extensions/no-debug-non-zts-20151012/opcache: cannot open shared object file: No such file or directory
2020-02-11T17:08:04.634700217Z [Tue Feb 11 17:08:04.634541 2020] [mpm_prefork:notice] [pid 28] AH00163: Apache/2.4.25 (Debian) PHP/7.0.33 configured -- resuming normal operations
2020-02-11T17:08:04.635348542Z [Tue Feb 11 17:08:04.634862 2020] [core:notice] [pid 28] AH00094: Command line: 'apache2 -D FOREGROUND'
2020-02-11T17:08:04.646641464Z 172.16.1.1 - - [11/Feb/2020:17:08:04 +0000] "GET /robots933456.txt HTTP/1.1" 404 341 "-" "-"

2020-02-11T17:08:18.196650781Z [Tue Feb 11 17:08:18.171200 2020] [autoindex:error] [pid 41] [client 172.16.1.1:51779] AH01276: Cannot serve directory /home/site/wwwroot/: No matching DirectoryIndex (index.php,index.html,default.htm,default.html,index.htm,index.html,index.php,hostingstart.html) found, and server-generated directory index forbidden by Options directive
2020-02-11T17:08:18.197972531Z 172.16.1.1 - - [11/Feb/2020:17:08:18 +0000] "GET / HTTP/1.1" 403 363 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36"

Мы перепробовали много разных конфигураций для релизов, но, похоже, ничего не минует этот шаг. Вот наш CI YAML:

CI YAML

Вот наши конфигурации конвейера выпуска:

Release Pipeline

Будем весьма благодарны за любые детали или толчки в правильном направлении. Мы не находим слишком много документации по этому вопросу или о том, как решить эту конкретную ошибку.

1 Ответ

0 голосов
/ 11 февраля 2020

Хотя я и выбрал План обслуживания приложений в качестве приложения. Net Core 3.1, похоже, что сама Служба приложений не установлена ​​как таковая. Чтобы это исправить, вам нужно go на вкладке Конфигурация вашей службы приложений, go - «Общие настройки» и убедиться, что вы установили следующие настройки:

.Net Core Stack

Обратите внимание, что версии Major и Minor не появляются, пока вы не выберете. Net Core Stack. Я sh это было нечто более очевидное и автоматически устанавливаемое, если вы устанавливаете это в качестве стека времени выполнения при создании плана обслуживания приложения. Я надеюсь, что это поможет всем, кто также сталкивается с этой проблемой.

ОБНОВЛЕНИЕ

Когда мы выдвинули новую версию, мы поняли, что AzureDevops перезаписывает этот параметр стека. Если пользователь работает над созданием конвейеров выпуска, но не имеет надлежащего доступа к Azure, «стек времени выполнения» в задаче Azure App Service Deploy в выпуске не будет заполнен. Кто-то с повышенными привилегиями увидит все доступные варианты. В данный момент можно выбрать «Последние (DOTNETCORE | Последние)». В настоящее время «3.1 (DOTNETCORE | 3.1)» недоступен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...