Публикация приложения .Net Core в Linux

У меня есть .Net Core 5, и я хочу опубликовать это приложение на машине Linux.

Я установил .net core 5 sdk на эту машину.

я использовал dotnet publish AppName.slnно я получаю сообщение «восстановление пакетов», и на этом оно останавливается. Я не получаю каталог публикации или сообщения об ошибках, чтобы выяснить, что может быть причиной этой проблемы.

Мне не хватает требований для запуска основного приложения .NET?

1 ответ

@M.peace При развертывании в Linux я публикую приложение в Windows и копирую файлы в систему Linux (развертываю в них). Я никогда не публикую в Linux. Я разворачиваю только на Linux. Это важное различие. Вот части моего плана действий по развертыванию:

В системе Linux: (Для меня Debian. Если вы не используете Debian, это может отличаться.)

      Install snapd
    (https://snapcraft.io/docs/installing-snap-on-debian)
    sudo apt-get install snapd
    sudo snap install core
Install .NET 5 Core SDK
    (https://docs.microsoft.com/en-us/dotnet/core/install/linux-snap)
    sudo snap install dotnet-sdk --classic --channel=5.0
    sudo snap alias dotnet-sdk-50.dotnet dotnet
    sudo ln -s /snap/dotnet-sdk/current/dotnet /usr/local/bin/dotnet

Затем машина сборки Windows:

      Publish Application
    Target Runtime = linux-x64
    Deployment Mode = Framework-dependent
    Zip publish folder and copy to host

Мои настройки публикации:

Это все, что вам нужно сделать, чтобы получить встроенный проект .NET Core в Linux. Для этого вам нужно настроить его для запуска. Как это сделать, зависит от того, является ли проект веб-приложением или консольным приложением. Консольные приложения относительно просты. Просто запустите его, используя dotnet project.dll. Веб-приложения требуют настройки Apache и Kestrel.

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