buildpacks/rfcs

[RFC #0105] - Dockerfiles

natalieparellano opened this issue ยท 1 comments

RFC #0105 - Dockerfiles

๐Ÿ“– ๐ŸŒŽ For a brief tour of what has shipped so far, consult these docs

Phase 1 - switching the run image

In this phase of the implementation, image extensions may output run.Dockerfiles in order to switch the runtime base image based on which buildpacks detected.
The detector binary should run /bin/detect for buildpacks and extensions, run /bin/generate for extensions, and determine the new run image from the generated Dockerfiles.

Spec:

Lifecycle:

Phase 2 - extending the build image

In this phase of the implementation, image extensions may output build.Dockerfiles in order to extend the build time base image.
The extender binary, running as root, should apply the Dockerfiles in the order determined during detect, and then drop privileges before executing the build phase.

Spec:

Lifecycle:

Pack:

Samples:

Documentation:

Phase 3 - extending the run image

In this phase of the implementation, image extensions may output Dockerfiles OR run.Dockerfiles in order to extend the runtime base image.
The extender binary, running as root, should apply the Dockerfiles in the order determined during detect, and then provide a reference to the extended run image to the platform, so that the platform can provide this during the export phase.

Spec:

Lifecycle:

Libcnb:

  • TBD
  • Released in libcnb version TBD

Pack:

Samples:

Documentation:

Optimizations

Should we also include a link to a paketo's github EPIC as they will also have to support extensions Dockerfiles ?