What's installed on your ASP.NET server?
- .NET 10 LTS SDK, including the ASP.NET Core runtime, from the Ubuntu 24.04 packages
- A sample Razor Pages project: source in /home/app/uygulama/kaynak, output in /home/app/uygulama/yayin
- A systemd service called uygulama, running as the unprivileged app user in Production on 127.0.0.1:5000
- Nginx as a reverse proxy, with WebSocket headers set and a 64 MB request body limit
- A Let's Encrypt certificate from certbot for your sslip.io address, renewed automatically
- 1 GB of swap, plus git
- Only ports 22, 80 and 443 open to the outside, while Kestrel's port 5000 stays internal
What size do you need for ASP.NET?
Microsoft doesn't give one RAM figure for ASP.NET Core, because it depends on your app. As a rule of thumb, 1 GB is a start for running a small compiled app. If you'll run dotnet publish on the server, 2 GB is more comfortable, even with the 1 GB of swap this install adds. For Entity Framework and busier projects, look at 4 GB. RAM and CPU grow separately from your panel; the server restarts once, and your data and IP stay the same.
| Use | Size | Price | Choose |
|---|---|---|---|
| Starter | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mo | |
| Medium | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mo | |
| Powerful | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mo |
Who is it for?
- Projects built on ASP.NET Core MVC, Razor Pages, Web API or Blazor Server
- Teams that want to run .NET on Linux without IIS
- Pipelines that build with dotnet publish and ship the output to their own server
- Apps with customers in Turkey that should run from Istanbul
What happens after you order?
- Set the size and complete your payment.
- Your server starts, and .NET and Nginx install themselves. This took about 3.5 minutes in our real-server tests.
- On the Overview tab, open the Site address link. The sample Razor page appears.
- Connect over SSH, run su - app, bring in your project and run dotnet publish -c Release -o ~/uygulama/yayin.
- As root, in /etc/systemd/system/uygulama.service, replace kaynak.dll on the ExecStart line with your own file.
- Run systemctl daemon-reload and systemctl restart uygulama, then refresh the site.
With every server
- Daily backups included in the price
- Unlimited traffic
- Full root access
- Scale RAM and CPU up or down later, and grow the disk
- Location: Istanbul · IST-1.
Good to know
- Older .NET Framework and Web Forms apps don't run on Linux. This server is for .NET 10 and ASP.NET Core, so those projects need porting first.
- Only .NET 10 is installed. For a project targeting net8.0, raise the target, install that runtime or publish it as self-contained.
- Kestrel listens on port 5000. If you change it, update ASPNETCORE_URLS in the service file and the proxy_pass line in Nginx together.
- No database is installed. Put your connection string in the app's settings or in the service file as an environment variable.
- Microsoft asks you to keep data protection keys in a persistent store, so sign-in cookies stay valid after a restart.
- If a certificate can't be issued, the site opens over http on your IP address. Updates to .NET and your app are your responsibility.
ASP.NET questions and answers
How much RAM does ASP.NET need?
Microsoft has no single RAM figure for ASP.NET Core. As a rule of thumb, 1 GB is a good start for a small compiled app, 2 GB if you build on the server and 4 GB for busier projects with Entity Framework. If it isn't enough, you scale up from your panel.
Can ASP.NET run on a Linux VPS?
ASP.NET Core can. This server runs .NET 10 on Ubuntu 24.04, with your app on Kestrel and Nginx passing requests to it, so IIS isn't needed. Older .NET Framework apps are a different story, because they run on Windows only.
Which .NET version is on the server?
The .NET 10 SDK is installed, and the runtime comes with it. If you target another version, install that runtime or publish your project as self-contained, so it brings its own runtime to the server.
How do I deploy my ASP.NET app?
As the app user, run dotnet publish -c Release -o ~/uygulama/yayin, or copy your publish output to that folder from your computer. Change the dll name in uygulama.service, then run systemctl daemon-reload and systemctl restart uygulama.
Will my Web Forms or MVC 5 app run?
No. Web Forms and MVC 5 need .NET Framework, which exists on Windows only. For those, choose a server with Windows Server and enter your own license, or port the project to ASP.NET Core.
How do I connect my own domain to an ASP.NET server?
Point your domain's A record at your server's IP address, then run certbot --nginx -d yourdomain.com. The certificate is issued and renews by itself.
Is SQL Server installed, and which database should I use?
No database is installed. With Entity Framework, you can connect to SQL Server on another machine or install a database such as PostgreSQL here. If you'd like a separate server, we also offer one with PostgreSQL installed.