Skip to content

Conversation

@profnandaa
Copy link
Contributor

@profnandaa profnandaa commented Jul 31, 2024

Because of reducing the footprint, nanoserver usually ships with as minimal binaries as possible. A few of those binaries left out are important for running integration tests on buildkit, for example comparing two files with fc.exe, that's a legacy tool found at C:\Windows\System32\fc.exe. The alternative is to use ServerCore which is very huge, and makes for instance one test to take 10x the time. e.g.

With servercore:

--- SKIP: TestIntegration (324.19s)
--- PASS: TestIntegration/TestDockerfileDirs/worker=containerd/frontend=builtin (323.70s)
    --- SKIP: TestIntegration/TestDockerfileDirs/worker=containerd/frontend=client (0.44s)

With nanoserver (plus):

 --- SKIP: TestIntegration (27.38s)
    --- PASS: TestIntegration/TestDockerfileDirs/worker=containerd/frontend=builtin (27.04s)
    --- SKIP: TestIntegration/TestDockerfileDirs/worker=containerd/frontend=client (0.29s)

the official mcr.microsoft.com/windows/nanoserver:ltsc2022 image
does not ship with some binaries so as to reduce the image size.
Some of those are needed for testing, etc.

We are therefore creating a custom nanoserver aka nanoserver-plus
image that ships with these binaries, and more others as needed

Signed-off-by: Anthony Nandaa <[email protected]>
@profnandaa profnandaa force-pushed the hacks-dockerfile-nanoserver-plus branch from 0f5cae0 to ae939ce Compare July 31, 2024 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant