dotnet / dotnet-docker-nightly

This repository has moved to the nightly branch of dotnet/dotnet-docker.
https://github.com/dotnet/dotnet-docker/tree/nightly
MIT License
35 stars 30 forks source link

Adding `<suite>-slim` variant support #326

Closed zafields closed 7 years ago

zafields commented 7 years ago

Can you also provide an image with debian:stretch-slim as the base image, instead of debian:stretch to minimize the image size for both ARM and x64?

You can find more information on the Debian Docker store page (https://store.docker.com/images/debian); specifically under the "<suite>-slim variants" heading.

"These tags are an experiment in providing a slimmer base (removing some extra files that are normally not necessary within containers, such as man pages and documentation), and are definitely subject to change."

This is very helpful in scenarios where multiple containers are in use in environments with limited resources (i.e. Raspberry Pi). Using jessie vs. jessie-slim as an example, you can see this removes 50MB from the base, which is roughly 1/3 of the overall storage required.

richlander commented 7 years ago

We will definitely consider this. One hand, this looks like a "no brainer", but on the other, the experimental aspect is concerning. I can imagine going with -slim for ARM32 and non-slim for X64. I'd like to focus our efforts for X64 on Alpine and provide the standard image for X64 for folks that want Debian. We could provide both variants, but that's confusing.

zafields commented 7 years ago

I think using a different base (for each architecture, ARM and x64) to effectively deliver "the same" development surface would be very confusing.

The greatest value of containers is their ability to provide the exact same experience, regardless of the platform. If you do elect to offer a -slim variant, then it should be available on both architectures.

However you choose to tackle this problem, please provide symmetry between the ARM and x64 architectures, the applications we build on top of these containers depend on it.

MichaelSimons commented 7 years ago

Issue moved to dotnet/dotnet-docker #254 via ZenHub