github.com/lusis/distribution@v2.0.1+incompatible/ROADMAP.md (about)

     1  # Roadmap
     2  
     3  The Distribution Project consists of several components, some of which are still being defined. This document defines the high-level goals of the project, identifies the current components, and defines the release-relationship to the Docker Platform.
     4  
     5  * [Distribution Goals](#distribution-goals)
     6  * [Distribution Components](#distribution-components)
     7  * [Project Planning](#project-planning): release-relationship to the Docker Platform.
     8  
     9  ## Distribution Goals
    10  
    11  - Replace the existing [docker registry](github.com/docker/docker-registry)
    12    implementation as the primary implementation.
    13  - Replace the existing push and pull code in the docker engine with the
    14    distribution package.
    15  - Define a strong data model for distributing docker images
    16  - Provide a flexible distribution tool kit for use in the docker platform
    17  
    18  ## Distribution Components
    19  
    20  Components of the Distribution Project are managed via github [milestones](https://github.com/docker/distribution/milestones). Upcoming
    21  features and bugfixes for a component will be added to the relevant milestone. If a feature or
    22  bugfix is not part of a milestone, it is currently unscheduled for
    23  implementation. 
    24  
    25  * [Registry](#registry)
    26  * [Distribution Package](#distribution-package)
    27  
    28  ***
    29  
    30  ### Registry
    31  
    32  Registry 2.0 is the first release of the next-generation registry. This is primarily
    33  focused on implementing the [new registry
    34  API](https://github.com/docker/distribution/blob/master/doc/spec/api.md), with
    35  a focus on security and performance.
    36  
    37  #### Registry 2.0
    38  
    39  Features:
    40  
    41  - Faster push and pull
    42  - New, more efficient implementation
    43  - Simplified deployment
    44  - Full API specification for V2 protocol
    45  - Pluggable storage system (s3, azure, filesystem and inmemory supported)
    46  - Immutable manifest references ([#46](https://github.com/docker/distribution/issues/46))
    47  - Webhook notification system ([#42](https://github.com/docker/distribution/issues/42))
    48  - Native TLS Support ([#132](https://github.com/docker/distribution/pull/132))
    49  - Pluggable authentication system
    50  - Health Checks ([#230](https://github.com/docker/distribution/pull/230))
    51  
    52  #### Registry 2.1
    53  
    54  Planned Features:
    55  
    56  > **NOTE:** This feature list is incomplete at this time.
    57  
    58  - Support for Manifest V2, Schema 2 and explicit tagging objects ([#62](https://github.com/docker/distribution/issues/62), [#173](https://github.com/docker/distribution/issues/173))
    59  - Mirroring ([#19](https://github.com/docker/distribution/issues/19))
    60  - Flexible client package based on distribution interfaces ([#193](https://github.com/docker/distribution/issues/193)
    61  
    62  #### Registry 2.2
    63  
    64  TBD
    65  
    66  ***
    67  
    68  ### Distribution Package 
    69  
    70  At its core, the Distribution Project is a set of Go packages that make up
    71  Distribution Components. At this time, most of these packages make up the
    72  Registry implementation. 
    73  
    74  The package itself is considered unstable. If you're using it, please take care to vendor the dependent version. 
    75  
    76  For feature additions, please see the Registry section. In the future, we may break out a
    77  separate Roadmap for distribution-specific features that apply to more than
    78  just the registry.
    79  
    80  ***
    81  
    82  ### Project Planning
    83  
    84  Distribution Components map to Docker Platform Releases via the use of labels. Project Pages are used to define the set of features that are included in each Docker Platform Release.
    85  
    86  | Platform Version | Label | Planning |
    87  |-----------|------|-----|
    88  | Docker 1.6 |  [Docker/1.6](https://github.com/docker/distribution/labels/docker%2F1.6) | [Project Page](https://github.com/docker/distribution/wiki/docker-1.6-Project-Page) |
    89  | Docker 1.7|  [Docker/1.7](https://github.com/docker/distribution/labels/docker%2F1.7) | [Project Page](https://github.com/docker/distribution/wiki/docker-1.7-Project-Page) |
    90  | Docker 1.8|  [Docker/1.8](https://github.com/docker/distribution/labels/docker%2F1.8) | [Project Page](https://github.com/docker/distribution/wiki/docker-1.8-Project-Page) |
    91