Fedora Base Container Image Minimization
Summary
Reduction in size of the Fedora Base container image 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.
Owner
- Name: Clement Verna Jakub Čajka
Current status
- 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>
Feedback
Please provide your use and use cases 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.
Scope
- 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:
Upgrade/compatibility impact
There should be no impact, breakage.
How To Test
TBD
User Experience
User will observe decrease in size of the Fedora base container image, fedora:34.
Dependencies
All layered images build on top of the Fedora base container image.
Contingency Plan
- 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
Documentation
TBD
Release Notes
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.