Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Развертывание приложений .NET на одноплатформенных компьютерах идентично любой другой платформе. Приложение может выполняться в режиме развертывания как автономного, так и зависящего от платформы. Существуют преимущества каждой стратегии. Дополнительные сведения см. в обзоре публикации приложений .NET.
Развертывание приложения, зависяющего от платформы
Чтобы развернуть приложение в качестве приложения, зависяющего от платформы, выполните следующие действия.
Убедитесь, что SSH включен на устройстве. Для Raspberry Pi см. инструкции по настройке SSH-сервера в документации raspberry Pi.
Установите .NET на устройстве с помощью скриптов dotnet-install. Выполните следующие действия из запроса Bash на устройстве (локальный или SSH):
Выполните следующую команду, чтобы установить .NET:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel STS
Замечание
Эта команда устанавливает последнюю версию. Если требуется определенная версия, замените параметр
--channel STS
на--version <VERSION>
, где<VERSION>
- конкретная версия сборки, например8.0.404
. Для получения списка версий см. SDK для .NET для Visual Studio. Чтобы определить полный номер сборки, см. столбец "Пакет SDK для Visual Studio 2022".Чтобы упростить разрешение путей, добавьте переменную среды
DOTNET_ROOT
, а также каталог dotnet в$PATH
с помощью следующих команд:echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc source ~/.bashrc
Проверьте установку .NET с помощью следующей команды:
dotnet --version
Убедитесь, что отображаемая версия соответствует установленной версии.
Опубликуйте приложение на компьютере разработки следующим образом в зависимости от среды разработки.
- При использовании Visual Studioразверните приложение в локальной папке. Перед публикацией выберите "Изменить " в сводке профиля публикации и перейдите на вкладку "Параметры ". Убедитесь, что для режима развертывания задано значение " Зависимый от платформы ", а целевая среда выполнения — переносимая.
- При использовании .NET CLI используйте команду dotnet publish . Дополнительные аргументы не требуются.
С помощью клиента SFTP, например
scp
, скопируйте файлы из папки публикации на компьютере разработчика в новую папку на SBC.Например, чтобы использовать
scp
команду для копирования файлов с компьютера разработки на SBC, откройте командную строку и выполните следующую команду:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
Где:
- Параметр
-r
предписываетscp
копировать файлы рекурсивно. - /publish-location/ — это папка, опубликованная на предыдущем шаге.
-
pi@raspberrypi
— это имена пользователей и узлов в формате<username>@<hostname>
. - /home/pi/deployment-location/ — это новая папка в SBC.
Подсказка
Последние версии Windows имеют OpenSSH, в том числе
scp
предварительно установленные.- Параметр
В командной строке Bash в Raspberry Pi (локальном или SSH) запустите приложение. Для этого задайте папку развертывания в качестве текущего каталога и выполните следующую команду (где HelloWorld.dll является точкой входа приложения):
dotnet HelloWorld.dll
Развертывание автономного приложения
Чтобы развернуть приложение как автономное приложение, выполните следующие действия.
Убедитесь, что SSH включен на устройстве. Для Raspberry Pi см. инструкции по настройке SSH-сервера в документации raspberry Pi.
Опубликуйте приложение на компьютере разработки следующим образом в зависимости от среды разработки.
При использовании Visual Studioразверните приложение в локальной папке. Перед публикацией выберите "Изменить " в сводке профиля публикации и перейдите на вкладку "Параметры ". Убедитесь, что для режима развертывания задано значение "Локальная среда выполнения", а целевая среда выполнения — linux-arm64.
При использовании .NET CLI используйте команду dotnet publish с аргументами
--runtime linux-arm64
и--self-contained
.dotnet publish --runtime linux-arm64 --self-contained
Это важно
Если вы используете 32-разрядную ОС, вам нужно нацелиться на среду
linux-arm
выполнения.С помощью клиента SFTP, такого как
scp
, скопируйте файлы из папки публикации на компьютере для разработки в новую папку на SBC.Например, чтобы использовать
scp
команду для копирования файлов с компьютера разработки на SBC, откройте командную строку и выполните следующую команду:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
Где:
- Параметр
-r
предписываетscp
копировать файлы рекурсивно. - /publish-location/ — это папка, опубликованная на предыдущем шаге.
-
pi@raspberrypi
— это имена пользователей и узлов в формате<username>@<hostname>
. - /home/pi/deployment-location/ — это новая папка в SBC.
Подсказка
Последние версии Windows имеют OpenSSH, который включает предварительно установленный
scp
.- Параметр
В командной строке Bash на устройстве (локальном или SSH) запустите приложение. Для этого задайте текущий каталог в расположении развертывания и выполните следующие действия:
Предоставьте исполняемому файлу разрешение на выполнение (где
HelloWorld
находится имя исполняемого файла).chmod +x HelloWorld
Запустите исполняемый файл.
./HelloWorld