Re: F35 Change proposal: Smaller Container Base Image (remove sssd-client, util-linux, shadow-utils) (Self-Contained Change)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Apr 1, 2021 at 2:36 PM Neal Gompa <ngompa13@xxxxxxxxx> wrote:
>
> On Thu, Apr 1, 2021 at 2:23 PM Ben Cotton <bcotton@xxxxxxxxxx> wrote:
> >
> > https://fedoraproject.org/wiki/Changes/SmallerContainerBase
> >
> > == Summary ==
> > This change proposes to remove 3 packages (sssd-client, util-linux,
> > shadow-utils) from the Container Base Image (including the minimal
> > image). The Fedora Base Image is still quite large compared to other
> > distributions and the tools offered by these packages are not
> > essential in base image.
> >
> > == Owner ==
> > * Name: [[User:cverna| Clément Verna]]
> > * Email: <cverna-at-fedoraproject.org>
> >
> >
> > == Detailed Description ==
> > This is a proposal to make the Fedora Container Base image smaller by
> > remove the following 3 packages:
> > * sssd-client
> > * util-linux
> > * shadow-utils
> >
> > Current size of the base image and minimal base image :
> > {| class="wikitable"
> > |-
> > ! REPOSITORY !! TAG !! IMAGE ID !! CREATED !! SIZE
> > |-
> > | registry.fedoraproject.org/fedora || 34 || eede0db319cc || 2 days
> > ago || 187 MB
> > |-
> > | registry.fedoraproject.org/fedora-minimal || 34 || 4ff120184ee4 ||
> > 2 days ago || 122 MB
> > |}
> >
> > The installed size of each package is :
> >
> > {| class="wikitable"
> > |-
> > ! Package !! Installed Size
> > |-
> > | util-linux || 13018140
> > |-
> > | shadow-utils || 3876259
> > |-
> > | sssd-client || 317948
> > |}
> >
> > Removing these packages would allow to gain around 17MB in both images.
> >
> > Each of these packages provides useful tools but the main goal of the
> > base image is for building layered images. Each of these packages can
> > easily be added in a layered image if needed.
> >
> > More info and discussion happened for each package in the Container SIG tracker
> >
> > sssd-client : https://pagure.io/ContainerSIG/container-sig/issue/44
> >
> > util-linux : https://pagure.io/ContainerSIG/container-sig/issue/45
> >
> > shadow-utils : https://pagure.io/ContainerSIG/container-sig/issue/46
> >
> >
> > == Benefit to Fedora ==
> > Reducing the size of the base image makes it a more interesting choice
> > for users to build layered images using Fedora. The base image is also
> > heavily used by CI systems so reducing the size makes it faster to be
> > pulled.
> > Removing packages from the base image also reduces the number of CVEs
> > our users have to care about.
> >
> >
> > == Scope ==
> > * Proposal owners:
> > Explicitly remove the 3 packages from the base image kickstart :
> > https://pagure.io/fedora-kickstarts/blob/main/f/fedora-container-base.ks
> >
> > * Release engineering:
> > Approve and Merge the kickstart change.
> >
> > * Policies and guidelines: N/A (not needed for this Change)
> >
> > * Trademark approval: N/A (not needed for this Change)
> >
> > * Alignment with Objectives: N/A
> >
> > == Upgrade/compatibility impact ==
> >
> > Some layered images that relied on these packages being provided by
> > the base image will fail to build. These images will now have to make
> > sure to install the required package in their Container/Dockerfile.
> >
> > In most cases that will results in adding the following :
> >
> > RUN dnf -y install sssd-client shadow-utils util-linux && dnf clean all
> >
> >
> > == How To Test ==
> > Once implemented, one can test this change by pulling the rawhide
> > image and verify that none of the above packages are present in the
> > image.
> >
> > == User Experience ==
> > See Upgrade/compatibility impact
> >
> > == Dependencies ==
> >
> > == Contingency Plan ==
> > Kickstart changes can simply be reverted and packages added back in
> > the base image.
> >
>
> The only one of these I have a major problem with removing is
> shadow-utils. Without those tools, it's impossible to create and
> modify users, and that's an extremely common pattern for containers. I
> also don't think freeing 4MB on the unpacked rootfs is much of a gain
> for the pain you're about to cause by dropping shadow-utils from the
> base image. The overhead of having to install that makes it
> considerably less attractive to use.
>
> Unless OpenShift and RKE recently changed so that containers can run
> as root by default (as of yesterday, they didn't), this is solidly a
> bad idea, since it makes it much more unintuitive to set up secure
> containers conforming with the guidelines for these Kubernetes
> platforms.
>

Of course, I mean here container inner environments running with a
root user context. At least with OpenShift, containers that are not
adapted to run non-root tend to fail by default, in my experience and
testing.



-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux