= Proposed System Wide Change: Layered Docker Image Build Service =
* Colin Walters <walters AT redhat DOT com>
* Adam Miller <maxamillion AT gmail DOT com >
* Tomas Tomecek <ttomecek AT redhat DOT com>
* Tim Waugh <twaugh AT redhat DOT com>
Fedora currently ships a Docker base image, but Docker supports a layering concept. There
are some applications like Cockpit which we would like to ship as layered applications.
This change will deploy the build service to support building and delivering a set of
layered Docker images, and will enable Fedora contributors to create and maintain
Dockerfiles from which those images will be generated.
== Detailed Description ==
This change opens up an new type of official binary artifact produced by Fedora.
Currently, we produce two main types of artifacts: RPMs, and images. The RPMs are created
in Koji from specfiles in dist-git. The images come in different formats, but have in
common creation in Koji from kickstart files — this includes the official Fedora Docker
Base Image. This change introduces a new type of image, a Docker Layered Image, which is
created from a Dockerfile and builds on top of that base image.
The system has five major parts:
* A command-line client — already integrated into rpkg; needs only minor work to
enable in fedpkg
* dist-git for Dockerfiles
* A koji plugin, containerbuild
* An OpenShift 3 backend
* A distribution mechanism; initially, this will be
1. ftp/http mirror (either alt or main mirrors), and
2. pushed to upstream Docker hub (running our own registry is currently out of
scope; see below)
For more information, see this presentation for the high level overview of the whole
== Scope ==
For the Scope of this Change please check