O que vem instalado no servidor ASP.NET?
- SDK do .NET 10 LTS, incluindo o runtime do ASP.NET Core, a partir dos pacotes do Ubuntu 24.04
- Um projeto Razor Pages de exemplo: código-fonte em /home/app/uygulama/kaynak, resultado em /home/app/uygulama/yayin
- Um serviço systemd chamado uygulama, executado como o utilizador app sem privilégios, em Production, em 127.0.0.1:5000
- Nginx como proxy inverso, com os cabeçalhos WebSocket definidos e um limite de 64 MB para o corpo dos pedidos
- Um certificado Let's Encrypt do certbot para o seu endereço sslip.io, renovado automaticamente
- 1 GB de swap, mais o git
- Só as portas 22, 80 e 443 abertas ao exterior, enquanto a porta 5000 do Kestrel fica interna
Que tamanho é necessário para o ASP.NET?
A Microsoft não dá um valor único de RAM para o ASP.NET Core, porque depende da aplicação. Como regra geral, 1 GB é um começo para executar uma aplicação compilada pequena. Se for executar dotnet publish no servidor, 2 GB são mais confortáveis, mesmo com o 1 GB de swap que esta instalação acrescenta. Para o Entity Framework e projetos mais movimentados, considere 4 GB. A RAM e o CPU aumentam em separado a partir do painel; o servidor reinicia uma vez, e os dados e o IP mantêm-se.
| Utilização | Tamanho | Preço | Escolher |
|---|---|---|---|
| Inicial | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mês | |
| Médio | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mês | |
| Potente | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mês |
Para quem é?
- Projetos construídos com ASP.NET Core MVC, Razor Pages, Web API ou Blazor Server
- Equipas que querem executar .NET em Linux sem IIS
- Pipelines que compilam com dotnet publish e enviam o resultado para o seu próprio servidor
- Aplicações com clientes na Turquia que devem funcionar a partir de Istambul
O que acontece depois de encomendar?
- Defina o tamanho e conclua o pagamento.
- O servidor arranca, e o .NET e o Nginx instalam-se sozinhos. Nos nossos testes em servidores reais, demorou cerca de 3,5 minutos.
- No separador Resumo, abra a ligação Endereço do site. Aparece a página Razor de exemplo.
- Ligue-se por SSH, execute su - app, traga o seu projeto e execute dotnet publish -c Release -o ~/uygulama/yayin.
- Como root, em /etc/systemd/system/uygulama.service, substitua kaynak.dll na linha ExecStart pelo seu próprio ficheiro.
- Execute systemctl daemon-reload e systemctl restart uygulama e depois atualize o site.
Em todos os servidores
- Cópias de segurança diárias incluídas no preço
- Tráfego ilimitado
- Acesso root completo
- Aumentar ou reduzir a RAM e o CPU mais tarde, e fazer crescer o disco
- Localização: Istanbul · IST-1.
Bom saber
- As aplicações mais antigas em .NET Framework e Web Forms não funcionam em Linux. Este servidor é para .NET 10 e ASP.NET Core, por isso esses projetos precisam primeiro de ser portados.
- Só o .NET 10 está instalado. Para um projeto com destino net8.0, suba o destino, instale esse runtime ou publique-o como autónomo (self-contained).
- O Kestrel escuta na porta 5000. Se a alterar, atualize em conjunto o ASPNETCORE_URLS no ficheiro do serviço e a linha proxy_pass no Nginx.
- Não há nenhuma base de dados instalada. Coloque a cadeia de ligação nas definições da aplicação ou no ficheiro do serviço, como variável de ambiente.
- A Microsoft pede que as chaves de proteção de dados fiquem num armazenamento persistente, para que os cookies de início de sessão continuem válidos depois de um reinício.
- Se não for possível emitir um certificado, o site abre por http no seu endereço IP. As atualizações do .NET e da sua aplicação são da sua responsabilidade.
ASP.NET: perguntas e respostas
De quanta RAM precisa o ASP.NET?
A Microsoft não tem um valor único de RAM para o ASP.NET Core. Como regra geral, 1 GB é um bom começo para uma aplicação compilada pequena, 2 GB se compilar no servidor e 4 GB para projetos mais movimentados com Entity Framework. Se não chegar, aumenta a partir do painel.
O ASP.NET funciona num VPS Linux?
O ASP.NET Core funciona. Este servidor executa o .NET 10 no Ubuntu 24.04, com a aplicação no Kestrel e o Nginx a encaminhar-lhe os pedidos, pelo que o IIS não é necessário. As aplicações mais antigas em .NET Framework são outra história, porque só funcionam em Windows.
Que versão do .NET está no servidor?
O SDK do .NET 10 está instalado, e o runtime vem com ele. Se o seu destino for outra versão, instale esse runtime ou publique o projeto como autónomo (self-contained), para que traga o seu próprio runtime para o servidor.
Como publico a minha aplicação ASP.NET?
Como utilizador app, execute dotnet publish -c Release -o ~/uygulama/yayin, ou copie o resultado da publicação do seu computador para essa pasta. Altere o nome da dll em uygulama.service e depois execute systemctl daemon-reload e systemctl restart uygulama.
A minha aplicação Web Forms ou MVC 5 vai funcionar?
Não. O Web Forms e o MVC 5 precisam do .NET Framework, que só existe em Windows. Para esses casos, escolha um servidor com Windows Server e introduza a sua própria licença, ou porte o projeto para ASP.NET Core.
Como associo o meu próprio domínio a um servidor ASP.NET?
Aponte o registo A do domínio para o endereço IP do servidor e depois execute certbot --nginx -d yourdomain.com. O certificado é emitido e renova-se sozinho.
O SQL Server está instalado, e que base de dados devo usar?
Não há nenhuma base de dados instalada. Com o Entity Framework, pode ligar-se ao SQL Server noutra máquina ou instalar aqui uma base de dados como o PostgreSQL. Se preferir um servidor separado, também oferecemos um com PostgreSQL instalado.