Ejecutar dotnet en Ubuntu 20.04 LTS y aaPanel
Ejecutar Umbraco en Ubuntu
Instalar una aplicación .NET en Linux puede ser beneficioso por varias razones:
- Compatibilidad multiplataforma: .NET Core, la versión multiplataforma de .NET, permite que las aplicaciones se ejecuten en múltiples sistemas operativos, incluido Linux. Esto aumenta el alcance y la usabilidad de la aplicación en diferentes entornos.
- Rendimiento y fiabilidad: Linux es conocido por su rendimiento y estabilidad. Ejecutar una aplicación .NET en Linux puede aprovechar estas cualidades, lo que puede conducir a un mejor rendimiento y fiabilidad de la aplicación.
- Código abierto y soporte de la comunidad: tanto Linux como .NET Core son de código abierto, lo que significa que se benefician de un sólido soporte de la comunidad y de mejoras continuas. Esto puede traducirse en mayor seguridad, más funcionalidades y correcciones de errores más rápidas.
- Rentabilidad: Linux puede ser una opción más rentable para alojar aplicaciones, especialmente para empresas o desarrolladores que buscan reducir los costes operativos. Muchas distribuciones de Linux están disponibles de forma gratuita, lo que reduce el coste de las licencias de software.
- Integración con la infraestructura Linux existente: para las organizaciones que ya utilizan Linux en sus servidores u otras partes de su infraestructura de TI, instalar aplicaciones .NET en Linux puede garantizar una integración y gestión fluidas dentro de su ecosistema existente.
- Prácticas de desarrollo modernas: .NET Core en Linux admite prácticas y herramientas de desarrollo modernas, incluida la contenerización con Docker, que se admite de forma nativa en Linux. Esto puede facilitar procesos de desarrollo, pruebas e implementación más eficientes.
- Seguridad: Linux es a menudo elogiado por sus funciones de seguridad. Ejecutar aplicaciones .NET en Linux puede beneficiarse de estos aspectos de seguridad, ofreciendo un entorno más seguro para las aplicaciones.
En resumen, instalar una aplicación .NET en Linux puede ofrecer ventajas en términos de compatibilidad, rendimiento, coste, integración, prácticas de desarrollo modernas y seguridad, lo que la convierte en una opción atractiva para muchos desarrolladores y organizaciones.
Sigue los pasos indicados para conseguirlo:
Instalar aaPanel
Opcional pero útil para el mantenimiento:
El script de instalación se completará en unos minutos e instalará el panel de hosting, proporcionándote herramientas valiosas para mantener tus sitios.
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh
# Get Ubuntu version
declare repo_version=$(if command -v lsb_release &> /dev/null; then lsb_release -r -s; else grep -oP '(?<=^VERSION_ID=).+' /etc/os-release | tr -d '"'; fi)
# Download Microsoft signing key and repository
wget https://packages.microsoft.com/config/ubuntu/$repo_version/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
# Install Microsoft signing key and repository
sudo dpkg -i packages-microsoft-prod.deb
# Clean up
rm packages-microsoft-prod.deb
# Update packages
sudo apt update
sudo apt-get update && sudo apt-get install -y apt-transport-https aspnetcore-runtime-6.0
sudo apt-get update && sudo apt-get install -y apt-transport-https aspnetcore-runtime-7.0
sudo apt-get update && sudo apt-get install -y apt-transport-https aspnetcore-runtime-8.0
sudo nano /etc/systemd/system/kestrel-helloapp.service
[Unit]
Description=Example .NET Web API App running on Linux
[Service]
WorkingDirectory=/var/www/helloapp
ExecStart=/usr/bin/dotnet /var/www/helloapp/helloapp.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-example
User=www
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
sudo systemctl enable kestrel-helloapp.service
sudo systemctl start kestrel-helloapp.service
sudo systemctl status kestrel-helloapp.service
Y asegúrate de configurar el proxy inverso al puerto que configuraste para la aplicación dotnet (el predeterminado es 5001)
En este punto, ya puedes implementar tu sitio web y navegar hasta él.
Si vas a usar MSSQL con Ubuntu, asegúrate de instalarlo siguiendo estos pasos:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)"
sudo apt-get update
sudo apt-get install -y mssql-server
sudo /opt/mssql/bin/mssql-conf setup
systemctl status mssql-server --no-pager
sudo ufw allow 1433
ufw deny 1433
ufw deny 22
ufw deny 21
ufw deny 20