Fedora Base Container Image Minimization
Reduction in size of the Fedora Base container image(fedora on most registries) by dropping packages that are not needed for the core function of the base image. Those base functionalities will be gathered and defined in the process.
- Targeted release: Fedora 34
- Last updated: 2020-10-30
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Please provide your uses and use cases of Fedora base container image(fedora on most of container registries) in the Container-SIG issue or on the Fedora devel ML.
Benefit to Fedora
Reduced size of the base container image would make Fedora more friendly for cloud container use while keeping all the Fedora features. Reduction of the packages that are part of image will also help to find and fix implicit dependencies in containers and packages.
- Proposal owners: Gather feedback, use cases for the Fedora base container image. Remove identified packages from the container image.
- Other developers: Possibly fix/update their dependency requirements in packages and container.
- Release engineering: TBD #Releng issue number (a check of an impact with Release Engineering is needed)
- Policies and guidelines: TBD, but most probably not needed.
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives:
There should be no impact, breakage.
How To Test
User will observe decrease in size of the Fedora base container image, fedora:34.
All layered images build on top of the Fedora base container image.
- Contingency mechanism: Reverting changes to the base image definition and rebuild of the base image and affected layered container images by change owners.
- Contingency deadline: Final Freeze
- Blocks release? No
- Blocks product? product
Fedora container image got smaller by [size MB] dropping following packages [list of package]. If you are using some of them in your layered image, they will most probably be pulled by other packages that you are using/installing. If not you will have to install them during build of your layered image explicitly.