The toolkit to pack, ship, store, and deliver container content
 
 
 
 
 
Go to file
Stephen J Day 8be20212f1 Move tarsum utilities out of common package
In preparation for removing the common package, the tarsum utilities are being
moved to the more relevant digest package. This functionality will probably go
away in the future, but it's maintained here for the time being.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2015-01-05 16:04:30 -08:00
api/v2 Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
auth Move StringSet to new collections package 2015-01-05 15:18:03 -08:00
client Rename History object to comply with golint 2015-01-02 18:08:53 -08:00
cmd Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
collections Move StringSet to new collections package 2015-01-05 15:18:03 -08:00
common Move tarsum utilities out of common package 2015-01-05 16:04:30 -08:00
configuration Integrate auth.AccessController into registry app 2014-12-18 12:34:56 -08:00
digest Move tarsum utilities out of common package 2015-01-05 16:04:30 -08:00
doc Merge pull request #7 from stevvooe/api-specification-introduction 2015-01-02 10:47:47 -08:00
manifest Rename History object to comply with golint 2015-01-02 18:08:53 -08:00
open-design Initial open-design proposal 2014-11-10 09:39:20 -08:00
project Adds pre-commit hook, hook config script, and a README 2014-12-15 18:09:11 -08:00
storage Move tarsum utilities out of common package 2015-01-05 16:04:30 -08:00
storagedriver Adds basic READMEs to inmemory and filesystem storage drivers 2014-12-29 13:59:40 -08:00
.drone.yml Fix goverall 2014-11-22 10:17:14 -08:00
.gitignore Initial commit 2014-12-22 15:49:26 -08:00
CONTRIBUTING.md Initial open-design proposal 2014-11-10 09:39:20 -08:00
Dockerfile Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
LICENSE Initial commit 2014-12-22 15:49:26 -08:00
MAINTAINERS Initial open-design proposal 2014-11-06 13:28:27 -08:00
README.md Fix documentation link 2015-01-04 11:38:37 -08:00
api_test.go Decouple manifest signing and verification 2015-01-02 15:46:47 -08:00
app.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
app_test.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
circle.yml Test circle 2015-01-02 10:37:54 -08:00
context.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
helpers.go Initial implementation of Manifest HTTP API 2014-11-26 13:35:07 -08:00
images.go Move manifest to discrete package 2015-01-02 13:23:11 -08:00
layer.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
layerupload.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
tags.go Move from docker-registry to distribution 2014-12-23 17:13:02 -08:00
util.go Carve out initial application structure 2014-11-10 19:03:49 -08:00

README.md

Distribution

The Docker toolset to pack, ship, store, and deliver content.

Planned content for this repository:

  • Distribution related specifications
    • Image format
    • JSON registry API
  • Registry implementation: a Golang implementation of the JSON API
  • Client libraries to consume conforming implementations of the JSON API

Ongoing open sprint

What is an open sprint?

The open sprint is a focused effort of a small group of people to kick-off a new project, while commiting to becoming maintainers of the resulting work.

Having a dedicated team work on the subject doesn't mean that you, the community, cannot contribute! We need your input to make the best use of the sprint, and focus our work on what matters for you. For this particular topic:

  • Come discuss on IRC: #docker-distribution on FreeNode
  • Submit your ideas, and upvote those you think matter the most on Google Moderator

Goal of the distribution sprint

Design a professional grade and extensible content distribution system, that allow users to:

  • Enjoy an efficient, secured and reliable way to store, manage, package and exchange content
  • Hack/roll their own on top of healthy open-source components
  • Implement their own home made solution through good specs, and solid extensions mechanism.

Schedule and expected output

The Open Sprint will start on Monday December 29th, and end on Friday January 16th.

What we want to achieve as a result is:

  • Tactical fixes of today's frustrations in the existing Docker codebase

  • Laying the base of a new distribution subsystem, living independently, and with a well defined group of maintainers. This is the purpose of this repository, which aims at hosting:

    • A specification of the v2 image format
    • A specification of the JSON/HTTP protocol
    • Server-side Go implementation of the v2 registry
    • Client-side Go packages to consume this new API
    • Standalone binaries providing content distribution functionalities outside of Docker

How will this integrate with Docker engine?

Building awesome, independent, and well maintained distribution tools should give Docker core maintainers enough incentive to switch to the newly develop subsystem. We make no assumptions on a given date or milestone as urgency should be fixed through docker/docker#9784, and in order to maintain focus on producing a top quality alternative.

Relevant documents