Proposal: Switch to Ubuntu for .NET convenience tags #5709
richlander
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
We use Debian images for
8.0
and similar convenience tags. Debian has served us very well, except that Debian and .NET release cycles align poorly. We should switch the convenience tags to Ubuntu to remedy this problem. We will continue to publish Debian images. This proposal is for .NET 10.Proposed pattern:
10.0
tags will be based on Ubuntu 24.0411.0
tags will be based on Ubuntu 24.0412.0
tags will be based on Ubuntu 26.04After this change, we'd expect to have the following tags (for .NET 10) at .NET 10 GA.
10.0
: Ubuntu 24.0410.0-noble
: Ubuntu 24.0410.0-trixie
: Debian 1310.0-alpine
: Alpine 3.xEach of those tag families has other variants, for version and architecture.
After Debian 14 is released, we'd expect the following:
10.0
: Ubuntu 24.0410.0-noble
: Ubuntu 24.0410.0-trixie
: Debian 1310.0-debian14
: Debian 1410.0-alpine
: Alpine 3.xAfter Debian 13 goes EOL, we'd expect the following:
10.0
: Ubuntu 24.0410.0-noble
: Ubuntu 24.0410.0-debian14
: Debian 1410.0-alpine
: Alpine 3.xNote:
debian14
is a placeholder for the Debian 14 codename.Details
The convenience tags are important because they get a lot of usage precicely because they are covenient to use. As a result, they should offer a "no regrets" experience. There can always be better or more optimized choices, but there should be nothing about these tags that could be considered a poor choice.
There are two challenges with Debian images for us, all related to release cycle alignments:
The first point is acceptable, but undesirable. We would prefer to adopt an OS that was release >= 6 months earlier than a .NET release. The second point is a significant problem for convenience tags. We've always seen Debian as the Docker Hub default and stuck with it for that reason. In retrospect, we should have resolved this a long time ago.
In contrast, with Ubuntu:
Note: Some people consider the
.1
release to be where LTS really starts for Ubuntu. That comes out later, making the gap closer to a year with a significant increase in quality.We can test how this would have worked out for .NET 8 if we'd used this model with Ubuntu 22.04.
That would have worked well. That is, however, not what we did. It is what we propose to do for .NET 10 and Ubuntu 24.04.
Some folks conclude that current practice is better since they would prefer a newer OS. However, it should be noted that we observe that Ubuntu releases (at at least in some cases) are quicker to adopt eocosystem changes. For example, Ubuntu (22.04) adopted OpenSSL 3 before Debian (12).
Lifecycle information:
Related issues:
Beta Was this translation helpful? Give feedback.
All reactions