Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add .net image #223

Closed
amouat opened this issue Sep 26, 2022 · 21 comments
Closed

Add .net image #223

amouat opened this issue Sep 26, 2022 · 21 comments
Assignees
Labels
q223 roadmap used by teams to indicate issues that we represent in a customer roadmap view

Comments

@amouat
Copy link
Contributor

amouat commented Sep 26, 2022

Create a .net image. See https://twitter.com/sbs0x/status/1573359024598405122

@dlorenc
Copy link
Contributor

dlorenc commented Sep 29, 2022

We've had another request for these!

@patflynn
Copy link
Contributor

ariadne may start on this this week.

@patflynn
Copy link
Contributor

related to wolfi-dev/os#368

@tuananh
Copy link
Contributor

tuananh commented Jan 17, 2023

anyone working on this? if not, i can volunteer. i may need some guidance/help on this though :)

@patflynn patflynn transferred this issue from another repository Jan 17, 2023
@patflynn patflynn assigned kaniini and unassigned rawlingsj Jan 17, 2023
@patflynn
Copy link
Contributor

Hi @tuananh, thanks for the offer. @kaniini was planning on working on this soon, let's see what she says.

@kaniini
Copy link
Contributor

kaniini commented Jan 18, 2023

I am planning to work on this this week.

@patflynn
Copy link
Contributor

@kaniini has started on this.

@patflynn
Copy link
Contributor

patflynn commented Jan 30, 2023

Still workin on .Net. Depending on stuff could be this week or next.

@patflynn
Copy link
Contributor

This issue is blocked by dotnet/sdk#30558. Moving to Q2.

@patflynn patflynn added q223 and removed q123 labels Feb 13, 2023
@stevehipwell
Copy link

@patflynn is this bug also present in .NET v7?

@kaniini
Copy link
Contributor

kaniini commented Feb 14, 2023

At the moment our focus is on .NET 6 as it is the LTS branch. I have not checked with .NET 7 yet.

@stevehipwell
Copy link

@kaniini I agree that LTS support should be the primary target; but if .NET 6 has a defect and the maintainers haven't offered to fix it immediately it'd be worth checking if it's still a defect in .NET 7 (which will be closer to the code for the next LTS). Also being able to test with .NET 7 would be useful even if it isn't a LTS.

AFAIK there are a number of pretty major defects in .NET v6 meaning that there are more production deployments of .NET v7 that would be expected for a non LTS version.

@kaniini
Copy link
Contributor

kaniini commented Feb 14, 2023

Interesting. I can retry my test with .NET 7 later this week.

@stevehipwell
Copy link

@kaniini it looks like the .NET 8 preview should work as the announcement refers to Build your own .NET from dotnet/dotnet; which also suggests that this might not work on .NET 7. I'd guess if this is the case that it's unlikely that it'd be backported so maybe .NET 8 needs to be the target.

@RichiCoder1
Copy link

RichiCoder1 commented Feb 26, 2023

I think .NET 6 forward was built from source-build, but likely .NET 8 lowered the requirements/complexity further: https://devblogs.microsoft.com/dotnet/dotnet-6-is-now-in-ubuntu-2204/

That said, while a runtime image would be awesome, an AOT-compatible image might be simpler and backwards-compatible although it still has decently extensive list of requirements: https://github.com/dotnet/core/blob/main/release-notes/7.0/linux-packages.md.

(Microsofts Mariner-based image for reference)

I'm not sure how keen the team is on potentially maintaining two images though, so maybe just a .NET 8 Runtime image might be the best path forward for now?

@dlorenc
Copy link
Contributor

dlorenc commented Feb 26, 2023

I've managed to get 7 and 8 to build although it's not pretty. We'll get back to this in a few weeks!

@gareth-houghton
Copy link

Hey, I'm not sure if this is the right place, but I noticed that aspnet-runtime, dotnet-runtime and dotnet-sdk images had appeared in the registry. @kaniini thanks for the hard work getting them put together! I've had a quick play around and managed to get a sample project running using them which is great.

Although my question is, what's the next steps to get these from experimental status to stable? And I'd be interested to know if there were plans to build a dotnet6 image? Only as that's the current LTS version from Microsoft.

@mathieu-benoit
Copy link

mathieu-benoit commented Mar 30, 2023

Indeed, great to see, thanks @kaniini!

Also, any chance to get the associated dotnet/runtime-deps variation too?

mcr.microsoft.com/dotnet/runtime        7.0.4                                   40450c453530   6 days ago    190MB
mcr.microsoft.com/dotnet/runtime-deps   7.0.4                                   b53cbd54f8b3   6 days ago    117MB
mcr.microsoft.com/dotnet/runtime        7.0.4-alpine3.17-amd64                  017bf992c17b   2 weeks ago   84.2MB
mcr.microsoft.com/dotnet/runtime-deps   7.0.4-alpine3.17-amd64                  ada21ea6f003   2 weeks ago   12.1MB

dotnet/runtime-deps allows to have a smaller container like illustrated above.

Thanks!

@kaniini
Copy link
Contributor

kaniini commented Mar 30, 2023

What exactly is runtime-deps used for? What’s the difference between it and runtime?

@mathieu-benoit
Copy link

mathieu-benoit commented Mar 30, 2023

.NET can be published in two different modes: framework-dependent (runtime) or self-contained (runtime-deps). There are pros and cons to use one or the other, but one attractive and popular feature with self-contained is that you can trim your app bundled, minimizing the size of the final image.

@patflynn
Copy link
Contributor

patflynn commented Apr 5, 2023

created #423 to track the new variant request.

developer-guy pushed a commit to Dentrax/images that referenced this issue Feb 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
q223 roadmap used by teams to indicate issues that we represent in a customer roadmap view
Projects
None yet
Development

No branches or pull requests

10 participants