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 Dockerfiles for alpine3.18 #4629

Merged
merged 3 commits into from
Jun 1, 2023
Merged

Conversation

lbussell
Copy link
Contributor

README.aspnet.md Outdated
8.0.0-preview.5-jammy-amd64, 8.0-preview-jammy-amd64, 8.0.0-preview.5-jammy, 8.0-preview-jammy | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/8.0/jammy/amd64/Dockerfile) | Ubuntu 22.04
8.0.0-preview.5-jammy-chiseled-amd64, 8.0-preview-jammy-chiseled-amd64, 8.0.0-preview.5-jammy-chiseled, 8.0-preview-jammy-chiseled | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/8.0/jammy-chiseled/amd64/Dockerfile) | Ubuntu 22.04

## Linux arm64 Tags
Tags | Dockerfile | OS Version
-----------| -------------| -------------
7.0.5-bullseye-slim-arm64v8, 7.0-bullseye-slim-arm64v8, 7.0.5-bullseye-slim, 7.0-bullseye-slim, 7.0.5, 7.0 | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/7.0/bullseye-slim/arm64v8/Dockerfile) | Debian 11
7.0.5-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0-alpine-arm64v8, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
7.0.5-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
7.0.5-alpine3.18-arm64v8, 7.0-alpine3.18-arm64v8, 7.0-alpine-arm64v8, 7.0.5-alpine3.18, 7.0-alpine3.18 | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/aspnet/7.0/alpine3.18/arm64v8/Dockerfile) | Alpine 3.18
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 7.0-alpine-arm64v8 floating tag should stay pointing to alpine 3.17

README.runtime.md Show resolved Hide resolved
8.0.0-preview.5-jammy-amd64, 8.0-preview-jammy-amd64, 8.0.0-preview.5-jammy, 8.0-preview-jammy | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/8.0/jammy/amd64/Dockerfile) | Ubuntu 22.04
8.0.0-preview.5-jammy-chiseled-amd64, 8.0-preview-jammy-chiseled-amd64, 8.0.0-preview.5-jammy-chiseled, 8.0-preview-jammy-chiseled | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/8.0/jammy-chiseled/amd64/Dockerfile) | Ubuntu 22.04

## Linux arm64 Tags
Tags | Dockerfile | OS Version
-----------| -------------| -------------
7.0.5-bullseye-slim-arm64v8, 7.0-bullseye-slim-arm64v8, 7.0.5-bullseye-slim, 7.0-bullseye-slim, 7.0.5, 7.0 | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/bullseye-slim/arm64v8/Dockerfile) | Debian 11
7.0.5-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0-alpine-arm64v8, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
7.0.5-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the 7.0-alpine-arm64v8 tag was dropped.

8.0.0-preview.5-jammy-arm64v8, 8.0-preview-jammy-arm64v8, 8.0.0-preview.5-jammy, 8.0-preview-jammy | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/8.0/jammy/arm64v8/Dockerfile) | Ubuntu 22.04
8.0.0-preview.5-jammy-chiseled-arm64v8, 8.0-preview-jammy-chiseled-arm64v8, 8.0.0-preview.5-jammy-chiseled, 8.0-preview-jammy-chiseled | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/8.0/jammy-chiseled/arm64v8/Dockerfile) | Ubuntu 22.04

## Linux arm32 Tags
Tags | Dockerfile | OS Version
-----------| -------------| -------------
7.0.5-bullseye-slim-arm32v7, 7.0-bullseye-slim-arm32v7, 7.0.5-bullseye-slim, 7.0-bullseye-slim, 7.0.5, 7.0 | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/bullseye-slim/arm32v7/Dockerfile) | Debian 11
7.0.5-alpine3.17-arm32v7, 7.0-alpine3.17-arm32v7, 7.0-alpine-arm32v7, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/alpine3.17/arm32v7/Dockerfile) | Alpine 3.17
7.0.5-alpine3.17-arm32v7, 7.0-alpine3.17-arm32v7, 7.0.5-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/runtime/7.0/alpine3.17/arm32v7/Dockerfile) | Alpine 3.17
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the 7.0-alpine-arm32v7 tag was dropped.

README.sdk.md Outdated
8.0.100-preview.5-jammy-amd64, 8.0-preview-jammy-amd64, 8.0.100-preview.5-jammy, 8.0-preview-jammy | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/sdk/8.0/jammy/amd64/Dockerfile) | Ubuntu 22.04

## Linux arm64 Tags
Tags | Dockerfile | OS Version
-----------| -------------| -------------
7.0.302-bullseye-slim-arm64v8, 7.0-bullseye-slim-arm64v8, 7.0.302-bullseye-slim, 7.0-bullseye-slim, 7.0.302, 7.0 | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/sdk/7.0/bullseye-slim/arm64v8/Dockerfile) | Debian 11
7.0.302-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0-alpine-arm64v8, 7.0.302-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/sdk/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
7.0.302-alpine3.17-arm64v8, 7.0-alpine3.17-arm64v8, 7.0.302-alpine3.17, 7.0-alpine3.17, 7.0-alpine | [Dockerfile](https://github.com/dotnet/dotnet-docker/blob/nightly/src/sdk/7.0/alpine3.17/arm64v8/Dockerfile) | Alpine 3.17
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the 7.0-alpine-arm64v8 tag was dropped.

customSubTableTitle: .NET 8 Preview Tags
$(McrTagsYmlTagGroup:8.0-preview-jammy-amd64)
customSubTableTitle: .NET 8 Preview Tags
$(McrTagsYmlTagGroup:8.0-preview-jammy-chiseled-amd64)
customSubTableTitle: .NET 8 Preview Tags
$(McrTagsYmlTagGroup:7.0-bullseye-slim-amd64)
$(McrTagsYmlTagGroup:7.0-alpine3.17-amd64)
$(McrTagsYmlTagGroup:7.0-alpine3.18-amd64)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3.18 should be listed above 3.17. Applies in all instances.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This requires regenerating the readmes.

@mthalman
Copy link
Member

Looks like there's a PowerShell failure in 6.0 that needs to be investigated. Seems consistent.

@lbussell
Copy link
Contributor Author

@jander-msft, when do we want to move monitor to alpine3.18? Sometime after these are released and you have time to test it?

@jander-msft
Copy link
Member

@jander-msft, when do we want to move monitor to alpine3.18? Sometime after these are released and you have time to test it?

It should move to 3.18 when the floating alpine tags are moved to 3.18

@jander-msft
Copy link
Member

@jander-msft, when do we want to move monitor to alpine3.18? Sometime after these are released and you have time to test it?

It should move to 3.18 when the floating alpine tags are moved to 3.18

Completely separate from this effort to add the 3.18, I would like to somehow codify that .NET Monitor should move with the floating tags in the manifest and dockerfiles such that we don't have to think about it, but I haven't worked that out yet. We did briefly discuss this earlier this year, and it might require a new set of floating tags. I can log an issue about this where it can ideated before executing on it.

@lbussell lbussell force-pushed the alpine3.18 branch 2 times, most recently from aa820f1 to 87b56a0 Compare May 22, 2023 21:26
@lbussell
Copy link
Contributor Author

The issue here looks similar to PowerShell/PowerShell#19679 but with a different type initializer: System.Management.Automation.TypeAccelerators vs. System.Management.Automation.PSVersionInfo.

System.InvalidOperationException : Failed to execute docker run --name 6.0-pwsh-133292649288916909 --rm  mcr.microsoft.com/dotnet/nightly/sdk:6.0-alpine3.18-amd64 pwsh -c (Get-Childitem env:DOTNET_RUNNING_IN_CONTAINER).Value
Exit code: 139
Standard Error: One or more errors occurred. (The type initializer for 'System.Management.Automation.TypeAccelerators' threw an exception.)
Process terminated. The type initializer for 'System.Management.Automation.PSObject' threw an exception.
at System.Environment.FailFast(System.String, System.Exception)
at Microsoft.PowerShell.UnmanagedPSEntry.Start(System.String[], Int32)
at Microsoft.PowerShell.ManagedPSEntry.Main(System.String[])
System.TypeInitializationException: The type initializer for 'System.Management.Automation.PSObject' threw an exception.
---> System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Management.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.


File name: 'Microsoft.Management.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
--- End of inner exception stack trace ---
at System.Management.Automation.PSObject.get_Properties()
at System.Management.Automation.HostUtilities.GetDollarProfile(String allUsersAllHosts, String allUsersCurrentHost, String currentUserAllHosts, String currentUserCurrentHost)
at Microsoft.PowerShell.ConsoleHost.DoRunspaceInitialization(Boolean skipProfiles, String initialCommand, String configurationName, Collection1 initialCommandArgs)    at Microsoft.PowerShell.ConsoleHost.DoCreateRunspace(String initialCommand, Boolean skipProfiles, Boolean staMode, String configurationName, Collection1 initialCommandArgs)
at Microsoft.PowerShell.ConsoleHost.CreateRunspace(Object runspaceCreationArgs)
at Microsoft.PowerShell.ConsoleHost.DoRunspaceLoop(String initialCommand, Boolean skipProfiles, Collection`1 initialCommandArgs, Boolean staMode, String configurationName)
at Microsoft.PowerShell.ConsoleHost.Run(CommandLineParameterParser cpp, Boolean isPrestartWarned)
at Microsoft.PowerShell.ConsoleHost.Start(String bannerText, String helpText)
at Microsoft.PowerShell.UnmanagedPSEntry.Start(String[] args, Int32 argc)

@lbussell
Copy link
Contributor Author

I think we'll need to wait on dotnet/runtime#86284 to flow through. It might already be in the nightly builds but since #4628 is blocked, I'm not sure yet.

There's also a full release checklist here: dotnet/core#8470

@mthalman
Copy link
Member

mthalman commented May 23, 2023

It might already be in the nightly builds but since #4628 is blocked, I'm not sure yet.

Since this is 6.0, it wouldn't be there until the June servicing release.

@lbussell
Copy link
Contributor Author

I filed PowerShell/PowerShell#19703.

Since this is 6.0, it wouldn't be there until the June servicing release.

What's the resolution then? If the RID is the solution (which it may or may not be) would we have to wait until July to ship Alpine3.18 for 6.0? Or just validate internally ahead of time?

@mthalman
Copy link
Member

What's the resolution then? If the RID is the solution (which it may or may not be) would we have to wait until July to ship Alpine3.18 for 6.0? Or just validate internally ahead of time?

Assuming the RID fixes the issue, then yes, we'd have to wait until July. We should be able to validate that in our internal branch now.

@lbussell
Copy link
Contributor Author

An internal test run validated that the RID addition solves the PowerShell issue: https://dev.azure.com/dnceng/internal/_build/results?buildId=2187733&view=results (internal MSFT link)

@tvbishan
Copy link

@lbussell @mthalman So, we have to wait until July to receive Alpine 3.18 for 6.0?

@mthalman
Copy link
Member

@lbussell @mthalman So, we have to wait until July to receive Alpine 3.18 for 6.0?

That hasn't been determined yet.

reason = "PowerShell does not have Alpine arm images, skip testing";
return false;
}
else if (imageData.OS.Contains("3.18"))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should constrain this further since it's working on everything except for 6.0.

Suggested change
else if (imageData.OS.Contains("3.18"))
else if (imageData.Version.Major == 6 && imageData.OS.Contains("3.18"))

else if (imageData.OS.Contains("3.18"))
{
// PowerShell does not support Alpine 3.18 yet (https://github.com/PowerShell/PowerShell/issues/19703)
reason = "Powershell does not support Alpine 3.18 yet, skip testing"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
reason = "Powershell does not support Alpine 3.18 yet, skip testing"
reason = "Powershell does not support Alpine 3.18 yet, skip testing";

Copy link
Member

@mthalman mthalman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the Dockerfiles need to be regenerated.

@lbussell lbussell merged commit f61e4e5 into dotnet:nightly Jun 1, 2023
lbussell added a commit to lbussell/dotnet-docker that referenced this pull request Jun 9, 2023
lbussell added a commit to lbussell/dotnet-docker that referenced this pull request Jul 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants