Рассмотрим запуск NEXT 23.2.x (Net 6.0) в контейнере Web-сервер-КС 3.1.24 (порт 443). Предполагается, что приложение уже установлено (обновлено с 23.1), и оно не запускается. Ошибка вида:
It was not possible to find any compatible framework version
The framework 'Microsoft.NETCore.App', version '6.0.0' was not found.
- The following frameworks were found:
3.1.24 at [/opt/.dotnet/shared/Microsoft.NETCore.App]
Инструкция рекомендуется как временное решение:
Узнайте kestrel-порт приложения "Бюджет-NEXT" версии 23.2.x в контейнере Web-сервер-КС 3.1.24 порт веб-сервера 443 (wsks-3.1.24_443
).
bash /opt/wsks-3.1.24_443/ctl/ws_info.sh
В нашем случае kestrel-порт - 54439:
wBKS 54439 bnext /opt/wsks-3.1.24_443/www/html/wsks_54439 Бюджет-NEXT Stop
Скачайте aspnetcore-runtime-6.0.9-linux-x64.tar.gz и распакуйте в /opt/.dotnet6
.
wget -O /opt/aspnetcore-runtime-6.0.9-linux-x64.tar.gz https://keysystems.ru/files/web/Linux/netcore/aspnetcore-runtime-6.0.9-linux-x64.tar.gz --no-check-certificate
mkdir -p /opt/.dotnet6 && tar -C /opt/.dotnet6 -xvf /opt/aspnetcore-runtime-6.0.9-linux-x64.tar.gz
Скопируйте /opt/.dotnet6
в контейнер wsks-3.1.24_443
.
docker cp /opt/.dotnet6 wsks-3.1.24_443:/opt/
Отредактируйте bash-скрипт запуска приложения "Бюджет-NEXT" (kestrel-порт 54439). Для остальных приложений Net 6 потребуется только правка соответствующего bash-скрипта.
nano /opt/wsks-3.1.24_443/ctl/app/54439_app.sh
cmdstart="/opt/.dotnet6/dotnet /var/www/html/${app_dir}/${startdll}"
cmdstop="/opt/.dotnet6/dotnet /var/www/html/${app_dir}/${startdll}"
Подправьте файл /opt/wsks-3.1.24_443/ctl/ws_ctlapp.sh
.
sed -i 's/\/opt\/.dotnet\/dotnet/dotnet/g' /opt/wsks-3.1.24_443/ctl/ws_ctlapp.sh
Перезапустите контейнер.
systemctl restart wsks-3.1.24_443
Проверьте статус проблемного приложения.
bash /opt/wsks-3.1.24_443/ctl/ws_info.sh