Conversation
@richlander, |
Would it make sense to put the existing Dockerfiles in an architecture directory so that the directory structure is consistent across platforms? /2.0 |
Your formatting got messed up, but I'm pretty sure I know what you meant. I spent some time looking at our README to see how the GitHub source links would show up per image. Upon further consideration, I like your suggestion better. My suggestion falls a little too much in the "clever" category by compressing the folder structure. |
We could add an amd64 directory to the jessie directory for symmetry or leave as-is to keep things simple. Thoughts? |
What is left @MichaelSimons? I think we are getting close to landing this PR. |
@richlander, my preference would be to add the amd64 dir for Jessie as well in order to have symmetry. |
@richlander - Regarding your question about the remaining work.
|
@MichaelSimons I am getting back to this. We should re-up on where we are at. I was looking at the manifest.json. It would be good to get some guidance on how like you'd like to pivot architecture within the format. I can see a couple options. I just did a Any progress on the work items you mentioned above? |
@richlander, I just made dotnet/docker-tools#28 to modify the image-builder tool to support ARM. In the process of testing my change, I updated the manifest locally. Once the PR is merged I will check-in my manifest changes. The blocking issue right now is to get machines to do official builds on. I will be pushing on this over the next few days to get us unblocked. |
@richlander, @dagood I think this PR is ready for review. I plan on writing a CI test for the ARM images but see that as a separate PR. |
If you want to try out the multi-arch arm32 tags, I used the build infrastructure changes within this PR to build and push the images to msimons/dotnet-nightly |
libstdc++6 \ | ||
libunwind8 \ | ||
libuuid1 \ | ||
zlib1g \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Weird way to end a file, is this missing the cleanup?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes it is - looks like the && rm -rf /var/lib/apt/lists/*
got chopped off.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
LGTM |
How close or possible is an SDK image for ARM 32-bit? I saw there is a Runtime - but the source needs to be built too. |
@alexellis - The .NET Core SDK does not run on the Linux + ARM32 configuration. You will need to build your application on X64, copy the binaries to an ARM32 device and then build your Docker image. Alternatively you can make use of a multi-stage Dockerfile on Window 10 or macOS. The dotnet-docker-samples include a sample of this flow. If you have feedback on the sample please feel open an issue in the dotnet-docker-samples repo. |
Thanks for the clarification - perhaps you could update the documentation of the Docker Hub page? Otherwise I guess more people will end up here wondering where the SDK is. From a workflow/CI perspective this is disappointing. I work with the RPi platform + Docker a lot as a Docker Captain and .NET developer at work. Is this a temporary stumbling block or a permanent design decision? What about 64-bit ARM? Packet.net for instance have enterprise-grade Cavium servers which are very generously spec'd. |
I wrote up the situation here: dotnet/announcements#29. So, no, not a permanent decision, but also not our highest priority to solve at the moment. The rational given (performance) wouldn't apply to ARM64, so I would expect a different choice there. Our first focus is reducing the size of the SDK generally. Once we have that in-hand, then making a good experience on ARM32 should be easier. |
This PR is not done -- left to do: