Rodar dotnet no Ubuntu 20.04 LTS e aaPanel
Rodar o Umbraco no Ubuntu
Instalar uma aplicação .NET no Linux pode ser vantajoso por várias razões:
- Compatibilidade multiplataforma: O .NET Core, a versão multiplataforma do .NET, permite que as aplicações rodem em múltiplos sistemas operacionais, incluindo o Linux. Isso aumenta o alcance e a usabilidade da aplicação em diferentes ambientes.
- Desempenho e confiabilidade: O Linux é conhecido por seu desempenho e estabilidade. Rodar uma aplicação .NET no Linux pode aproveitar esses atributos, potencialmente levando a um melhor desempenho e confiabilidade da aplicação.
- Código aberto e suporte da comunidade: Tanto o Linux quanto o .NET Core são de código aberto, o que significa que se beneficiam de um suporte robusto da comunidade e de melhorias contínuas. Isso pode levar a uma melhor segurança, mais recursos e correções de bugs mais rápidas.
- Custo-benefício: O Linux pode ser uma opção mais econômica para hospedar aplicações, especialmente para empresas ou desenvolvedores que buscam reduzir os custos operacionais. Muitas distribuições Linux estão disponíveis gratuitamente, reduzindo o custo com licenças de software.
- Integração com a infraestrutura Linux existente: Para organizações que já usam Linux em seus servidores ou em outras partes de sua infraestrutura de TI, instalar aplicações .NET no Linux pode garantir uma integração e um gerenciamento perfeitos dentro de seu ecossistema existente.
- Práticas modernas de desenvolvimento: O .NET Core no Linux suporta ferramentas e práticas modernas de desenvolvimento, incluindo a conteinerização com Docker, que tem suporte nativo no Linux. Isso pode facilitar processos mais eficientes de desenvolvimento, teste e implantação.
- Segurança: O Linux é frequentemente elogiado por seus recursos de segurança. Rodar aplicações .NET no Linux pode se beneficiar desses aspectos de segurança, oferecendo um ambiente mais seguro para as aplicações.
Em resumo, instalar uma aplicação .NET no Linux pode oferecer vantagens em termos de compatibilidade, desempenho, custo, integração, práticas modernas de desenvolvimento e segurança, tornando-a uma opção atraente para muitos desenvolvedores e organizações.
Siga os passos descritos para conseguir isto:
Instalar o aaPanel
Opcional, mas útil para a manutenção:
O script de instalação será concluído em poucos minutos e instalará o painel de hospedagem, dando a você ferramentas valiosas para manter seus sites.
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
E certifique-se de configurar o proxy reverso para a porta que você configurou para a aplicação dotnet (o padrão é 5001)
Neste ponto, você já pode implantar seu site e navegar até ele.
Se você for usar o MSSQL com o Ubuntu, certifique-se de instalá-lo seguindo estes passos:
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