|
| 1 | +--- |
| 2 | +title: Installing .NET Guidance |
| 3 | +description: Learn about which versions of .NET SDK and .NET Runtime are supported, and how to install .NET on Alpine. |
| 4 | +author: adegeo |
| 5 | +ms.author: adegeo |
| 6 | +ms.date: 12/13/2024 |
| 7 | +ms.custom: linux-related-content |
| 8 | +--- |
| 9 | + |
| 10 | +# Installing .NET Guidance |
| 11 | + |
| 12 | +There are multiple ways to [install .NET](.). Reliability, servicing, and high availability are important requirements for many users. |
| 13 | + |
| 14 | +## Binaries |
| 15 | + |
| 16 | +There are multiple ways to download binaries: |
| 17 | + |
| 18 | +- [.NET website](https://dotnet.microsoft.com/download) |
| 19 | +- [Install script](../tools/dotnet-install-script) |
| 20 | +- [Release JSON files](https://builds.dotnet.microsoft.com/dotnet/release-metadata/releases-index.json) |
| 21 | +- [Release notes](https://github.com/dotnet/core/blob/main/release-notes/README.md) |
| 22 | + |
| 23 | +Packages and container images are also available, documented in release notes. |
| 24 | + |
| 25 | +## Picking the best URL |
| 26 | + |
| 27 | +Some scenarios requiring hard-coding URLs, for example [our Dockerfiles](https://github.com/dotnet/dotnet-docker/blob/85c275aed5bda401dc067ccc4a99a43bdd0d7531/src/runtime/8.0/jammy/amd64/Dockerfile#L8). We offer various URL schemes to meet specific needs. |
| 28 | + |
| 29 | +For binaries: |
| 30 | + |
| 31 | +- Major-version short link: https://aka.ms/dotnet/8.0/dotnet-runtime-linux-x64.tar.gz |
| 32 | +- Patch-version link: https://builds.dotnet.microsoft.com/dotnet/Runtime/8.0.12/dotnet-runtime-8.0.12-linux-x64.tar.gz |
| 33 | + |
| 34 | +The first link provides servicing updates transparently while the second provides repeatable stability. The first link also relies on another service (including a 3xx redirect) to arrive at the correct final link. |
| 35 | + |
| 36 | +For the install script: |
| 37 | + |
| 38 | +- Short link: https://dot.net/v1/dotnet-install.sh |
| 39 | +- Long link: https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.sh |
| 40 | + |
| 41 | +These two links are a matter of preference. |
| 42 | + |
| 43 | +For release JSON files: |
| 44 | + |
| 45 | +- Official: https://builds.dotnet.microsoft.com/dotnet/release-metadata/releases-index.json |
| 46 | +- GitHub: https://github.com/dotnet/core/blob/main/release-notes/releases-index.json |
| 47 | + |
| 48 | +The official `builds.dotnet.microsoft.com` link must be used for any production use of the JSON files. We do not offer production support for downtime for the GitHub link. |
| 49 | + |
| 50 | +Notes: |
| 51 | + |
| 52 | +- Distribution of [.NET installers changed in early 2025](https://github.com/dotnet/core/issues/9671). It is possible that you may need to adapt to those changes. |
| 53 | +- The JSON files historically [reference binaries from `download.visualstudio.microsoft.com`](https://github.com/dotnet/core/blob/ba8e8b613986c903b0caebfdb4cee8a2c6bf7f7b/release-notes/8.0/8.0.0/release.json#L31-L34). Going forward, only the `builds.dotnet.microsoft.com` will be used. |
| 54 | + |
| 55 | +## Checksums |
| 56 | + |
| 57 | +We provide checksums for all binaries so that integrity can be validated. |
| 58 | + |
| 59 | +Checksums are provided in multiple ways: |
| 60 | + |
| 61 | +- Version-specific checksum file: https://builds.dotnet.microsoft.com/dotnet/checksums/8.0.0-sha.txt |
| 62 | +- Release JSON: https://github.com/dotnet/core/blob/ba8e8b613986c903b0caebfdb4cee8a2c6bf7f7b/release-notes/8.0/8.0.0/release.json#L31-L34 |
| 63 | + |
| 64 | +## CI Installers |
| 65 | + |
| 66 | +CI installers, like [GitHub Actions](https://github.com/actions/setup-dotnet) and [Azure DevOps Tasks](https://learn.microsoft.com/azure/devops/pipelines/tasks/reference/use-dotnet-v2), are built on top of these same primitives. We work with these teams so that CI installers provide the best experience. |
0 commit comments