You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/supported-tags.md
+16-12Lines changed: 16 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,18 +52,22 @@ They include:
52
52
- Debian, unless specified (like `8.0-alpine`).
53
53
- All [supported architectures](supported-platforms.md#architectures).
54
54
55
-
> [!NOTE]
56
-
> Since .NET 8, these multi-platform tags **specifically exclude all Windows versions** due to `containerd`'s platform matching algorithm for Windows hosts.
57
-
58
-
Please see [#4492 (Switch multi-platform tags to Linux only)](https://github.com/dotnet/dotnet-docker/issues/4492) for more context.
59
-
If you are using Windows, you will need to explicitly specify an OS Version with a single-platform tag like so:
60
-
61
-
```Dockerfile
62
-
FROM mcr.microsoft.com/dotnet/sdk:8.0-nanoserver-ltsc2022
63
-
FROM mcr.microsoft.com/dotnet/sdk:8.0-nanoserver-1809
64
-
FROM mcr.microsoft.com/dotnet/sdk:8.0-windowsservercore-ltsc2019
65
-
FROM mcr.microsoft.com/dotnet/sdk:8.0-windowsservercore-ltsc2022
66
-
```
55
+
> [!WARNING]
56
+
> These multi-platform tags **specifically exclude all Windows versions** due
57
+
> to `containerd`'s platform matching algorithm for Windows hosts. See
Copy file name to clipboardExpand all lines: documentation/vulnerability-reporting.md
-1Lines changed: 0 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -327,7 +327,6 @@ Those are unrelated packages that happen to contain the same name as the vulnera
327
327
We can't take any action if a fixed version of the package isn't available from the package repository of the Linux distro version.
328
328
Sometimes fixes aren't ever made available because they are low severity or not applicable in container environments.
329
329
Questions on this matter should be directed to the relevant Linux distro.
330
-
If you're not already using [Alpine Linux](../samples/selecting-tags.md#alpine), you may want to consider using it instead because of its security focus and low number of vulnerabilities.
331
330
332
331
### L. Is the package in the Linux distro base image?
Copy file name to clipboardExpand all lines: samples/selecting-tags.md
+90-29Lines changed: 90 additions & 29 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,27 +6,42 @@ You can use the referenced images and tags with the docker CLI, for example with
6
6
7
7
## .NET Docker repos
8
8
9
-
There are multiple [.NET Docker repos](../README.md) that expose various layers of the .NET platform.
9
+
There are multiple [.NET Docker repos](../README.md) that expose various layers
10
+
of the .NET platform. They can be found under [Featured Repos](/README.md#featured-repos).
11
+
Other repos, including preview (nightly) .NET images, can be found under
12
+
[Related Repos](/README.md#related-repositories).
10
13
11
-
*[dotnet/runtime-deps](../README.runtime-deps.md) -- Linux-only images that contains the native dependencies of .NET. Best used for self-contained applications.
12
-
*[dotnet/runtime](../README.runtime.md) -- Images that contains the .NET runtime. Best used for console applications. On Linux, depends on the `runtime-deps` image.
13
-
*[dotnet/aspnet](../README.aspnet.md) -- Images that contains the ASP.NET Core runtime. Best used for web applications and services. Depends on the `runtime` image.
14
-
*[dotnet/sdk](../README.sdk.md) -- An image that contains the .NET SDK (which includes tools and all runtimes). Best used for building and testing applications. Depends on [buildpack-deps](https://hub.docker.com/_/buildpack-deps) for Debian and Ubuntu, on [dotnet/aspnet](../README.aspnet.md) for Alpine and on [windows/nanoserver](https://mcr.microsoft.com/en-us/product/windows/nanoserver/about) for Windows.
14
+
## Default Linux tags
15
15
16
-
The repos above are commonly used on the command line and in Dockerfiles. There are two more repos that may be useful to you:
16
+
The `runtime-deps`, `runtime`, `aspnet`, and `sdk` repos provide version-only
17
+
manifest list tags. These tags can sometimes be referred to as "convenience
18
+
tags".
17
19
18
-
*[dotnet/nightly](https://github.com/dotnet/dotnet-docker/blob/nightly/README.md) -- A duplicate structure of repos which contain the latest pre-released versions of .NET. (which are not supported in production).
19
-
*[dotnet/samples](../README.samples.md) -- A set of samples that demonstrate .NET being used in console and web scenarios.
20
+
*`9.0`
21
+
*`9.0.X`
22
+
*`latest`
23
+
24
+
For .NET 8 and .NET 9, these tags refer to Debian 12 (Bookworm). All three
25
+
of the above tags will provide a Debian image.
26
+
27
+
> [!CAUTION]
28
+
> For .NET 10 and subsequent releases, [these tags will refer to Ubuntu 24.04
These convenience tags don't support Windows. See the [Multi-Platform
32
+
Tags](/documentation/supported-tags.md#multi-platform-tags) documentation for
33
+
more info.
20
34
21
35
## Targeting a specific operating system
22
36
23
-
If you want a specific operating system image, you should use a specific operating system tag. We publish images for [Alpine](#alpine), [Debian](#debian), [Ubuntu](#ubuntu), [Windows Nano Server](#nano-server), and [Windows Server Core](#windows-server-core).
37
+
If you want a specific operating system image, you should use a specific operating system tag. We publish images for [Alpine](#alpine-linux), [Azure Linux](#azure-linux), [Debian](#debian), [Ubuntu](#ubuntu), [Windows Nano Server](#nano-server), and [Windows Server Core](#windows-server-core).
24
38
25
39
The following tags demonstrate the pattern used to describe each operating system (using .NET 9.0 as the example):
26
40
27
41
*`9.0-alpine` (Latest Alpine)
28
-
*`9.0-noble` (Ubuntu 24.04)
42
+
*`9.0-azurelinux3.0` (Azure Linux 3.0)
29
43
*`9.0-bookworm-slim` (Debian 12)
44
+
*`9.0-noble` (Ubuntu 24.04)
30
45
*`9.0-nanoserver-ltsc2022` (Nano Server LTSC 2022)
31
46
*`9.0-nanoserver-1809` (Nano Server, version 1809)
32
47
*`9.0-windowsservercore-ltsc2022` (Windows Server Core LTSC 2022)
* When targeting Linux containers, Debian is the default Linux distro for all tags that do not specify an OS. For example, `latest`, `9.0`, and `9.0.0` will all provide a Debian image.
46
-
* Very stable.
47
-
48
-
#### [Ubuntu](https://ubuntu.com)
49
-
50
-
* Shares Debian's codebase.
51
-
* Feature-rich.
52
-
* Less stable compared to Debian.
53
-
54
-
#### [Alpine](https://www.alpinelinux.org)
55
-
56
-
* Security-oriented and lightweight.
57
-
* Uses [musl instead of glibc](https://wiki.musl-libc.org/functional-differences-from-glibc.html) which may have incompatibility with your software.
By default, the `icu-libs` package is not included and the [globalization invariant mode](https://github.com/dotnet/runtime/blob/main/docs/design/features/globalization-invariant-mode.md) is enabled. You can opt into globalization support by [following the pattern shown in the sample Dockerfile](https://github.com/dotnet/dotnet-docker/blob/main/samples/dotnetapp/Dockerfile.alpine-icu).
0 commit comments