Implementación de aplicaciones .NET en Raspberry Pi
La implementación de aplicaciones .NET en Raspberry Pi es idéntica a la de cualquier otra plataforma. La aplicación se puede ejecutar según los modos de implementación independiente o dependiente del marco. Cada estrategia tiene sus ventajas. Para obtener más información, vea Información general sobre la publicación de aplicaciones .NET.
Implementación de una aplicación dependiente del marco
Para implementar la aplicación como una aplicación dependiente del marco, complete los pasos siguientes:
-
Asegúrese de que SSH está habilitado en el dispositivo Raspberry Pi. Si es necesario, consulte el apartado para habilitar un servidor SSH en la documentación de Raspberry Pi.
Instale .NET en el dispositivo Raspberry Pi con los scripts de dotnet-install. Desde un símbolo del sistema de Bash en el dispositivo Raspberry Pi (local o SSH), complete los pasos siguientes:
Ejecute el comando siguiente para instalar .NET:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel CurrentNota
De este modo se instala la versión más reciente. Si necesita una versión concreta, reemplace el parámetro
--channel Currentpor--version <VERSION>, donde<VERSION>es la versión de compilación específica.Para simplificar la resolución de la ruta de acceso, agregue una variable de entorno
DOTNET_ROOTy el directorio .dotnet a$PATHcon los comandos siguientes:echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc source ~/.bashrcCompruebe la instalación de .NET con el comando siguiente:
dotnet --versionCompruebe que la versión mostrada coincide con la que ha instalado.
Publique la aplicación en el equipo de desarrollo de la siguiente manera, en función del entorno de desarrollo.
- Si usa Visual Studio, implemente la aplicación en una carpeta local. Antes de la publicación, seleccione Editar en el resumen de perfil de publicación y seleccione la pestaña Configuración. Asegúrese de que Modo de implementación está establecido en Dependiente de marco de trabajo y Tiempo de ejecución de destino en Portable.
- Si usa la CLI de .NET, utilice el comando dotnet publish. No se necesitan argumentos adicionales.
-
Con un cliente SFTP como
scp, copie los archivos desde la ubicación de publicación en el equipo de desarrollo a una nueva carpeta en el dispositivo Raspberry Pi.Por ejemplo, para usar el comando
scpa fin de copiar archivos del equipo de desarrollo al dispositivo Raspberry Pi, abra un símbolo del sistema y ejecute lo siguiente:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/Donde:
- La opción
-rindica ascpque copie los archivos de forma recursiva. - /publish-location/ es la carpeta en la que ha publicado en el paso anterior.
pi@raspberypies el usuario y los nombres de host con el formato<username>@<hostname>.- /home/pi/deployment-location/ es la nueva carpeta en el dispositivo Raspberry Pi.
Sugerencia
Las versiones recientes de Windows tienen OpenSSH, que incluye
scppreinstalado. - La opción
Ejecute la aplicación desde un símbolo del sistema de Bash en el dispositivo Raspberry Pi (local o SSH). Para ello, establezca la carpeta de implementación como el directorio actual y ejecute el comando siguiente (donde HelloWorld.dll es el punto de entrada de la aplicación):
dotnet HelloWorld.dll
Implementación de una aplicación independiente
Para implementar la aplicación como una aplicación independiente, complete los pasos siguientes:
-
Asegúrese de que SSH está habilitado en el dispositivo Raspberry Pi. Si es necesario, consulte el apartado para habilitar un servidor SSH en la documentación de Raspberry Pi.
Publique la aplicación en el equipo de desarrollo de la siguiente manera, en función del entorno de desarrollo.
Si usa Visual Studio, implemente la aplicación en una carpeta local. Antes de la publicación, seleccione Editar en el resumen de perfil de publicación y seleccione la pestaña Configuración. Asegúrese de que Modo de implementación está establecido en Independiente y Tiempo de ejecución de destino en linux-arm.
Si usa la CLI de .NET, utilice el comando dotnet publish con el argumento
-r linux-arm:dotnet publish -r linux-arm
-
Con un cliente SFTP como
scp, copie los archivos desde la ubicación de publicación en el equipo de desarrollo a una nueva carpeta en el dispositivo Raspberry Pi.Por ejemplo, para usar el comando
scpa fin de copiar archivos del equipo de desarrollo al dispositivo Raspberry Pi, abra un símbolo del sistema y ejecute lo siguiente:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/Donde:
- La opción
-rindica ascpque copie los archivos de forma recursiva. - /publish-location/ es la carpeta en la que ha publicado en el paso anterior.
pi@raspberypies el usuario y los nombres de host con el formato<username>@<hostname>.- /home/pi/deployment-location/ es la nueva carpeta en el dispositivo Raspberry Pi.
Sugerencia
Las versiones recientes de Windows tienen OpenSSH, que incluye
scppreinstalado. - La opción
Ejecute la aplicación desde un símbolo del sistema de Bash en el dispositivo Raspberry Pi (local o SSH). Para ello, establezca el directorio actual en la ubicación de implementación y complete los pasos siguientes:
Conceda el permiso execute al ejecutable (donde
HelloWorldes el nombre del archivo ejecutable).chmod +x HelloWorldEjecute el archivo ejecutable.
./HelloWorld