2015-04-29 21:20:09 +02:00
<!-- GITHUB
2015-04-16 02:23:40 +02:00
page_title: Docker Registry 2.0
page_description: Introduces the Docker Registry
page_keywords: registry, images, repository
2015-04-29 21:20:09 +02:00
IGNORES-->
2015-03-03 08:33:02 +01:00
2015-05-13 09:32:14 +02:00
# Docker Registry
2015-03-03 08:33:02 +01:00
2015-05-22 11:17:23 +02:00
## What it is
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
The Registry is a stateless, highly scalable server side application that stores and lets you distribute Docker images.
The Registry is open-source, under the permissive [Apache license ](http://en.wikipedia.org/wiki/Apache_License ).
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
## Why use it
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
You should use the Registry if you want to:
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
* tightly control where your images are being stored
* fully own your images distribution pipeline
2015-06-01 05:08:28 +02:00
* integrate images storage and distribution into your inhouse development workflow
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
## Alternatives
2015-04-16 02:23:40 +02:00
2015-05-22 11:17:23 +02:00
Users looking for a zero maintenance, ready-to-go solution are encouraged to head-over to the [Docker Hub ](https://hub.docker.com ), which provides a free-to-use, hosted Registry, plus additional features (organization accounts, automated builds, and more).
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
Users looking for a commercially supported version of the Registry should look into [Docker Hub Enterprise ](https://docs.docker.com/docker-hub-enterprise/ ).
2015-04-02 17:11:19 +02:00
2015-05-22 11:17:23 +02:00
## Requirements
2015-04-16 02:23:40 +02:00
2015-06-01 05:08:28 +02:00
The Registry is compatible with Docker engine **version 1.6.0 or higher** .
2015-05-22 11:17:23 +02:00
If you really need to work with older Docker versions, you should look into the [old python registry ](https://github.com/docker/docker-registry )
2015-04-16 02:23:40 +02:00
2015-05-22 11:17:23 +02:00
## TL;DR
2015-04-16 02:23:40 +02:00
2015-05-22 11:17:23 +02:00
```
# Start your registry
docker run -d -p 5000:5000 registry:2
2015-04-16 02:23:40 +02:00
2015-06-01 05:08:28 +02:00
# Pull (or build) some image from the hub
2015-05-22 11:17:23 +02:00
docker pull ubuntu
2015-04-16 02:23:40 +02:00
2015-06-01 05:08:28 +02:00
# Tag the image so that it points to your registry
2015-05-22 11:17:23 +02:00
docker tag ubuntu localhost:5000/myfirstimage
2015-04-16 02:23:40 +02:00
2015-05-22 11:17:23 +02:00
# Push it
docker push localhost:5000/myfirstimage
2015-04-16 02:23:40 +02:00
2015-06-01 05:08:28 +02:00
# Pull it back
2015-05-22 11:17:23 +02:00
docker pull localhost:5000/myfirstimage
```
2015-04-16 02:23:40 +02:00
2015-05-22 11:17:23 +02:00
Simple as that? Yes. Now, please read the...
2015-05-13 09:32:14 +02:00
2015-05-22 11:17:23 +02:00
## Documentation
- [Introduction ](introduction.md )
2015-05-13 09:32:14 +02:00
- [Deployment ](deploying.md )
- [Configuration ](configuration.md )
2015-05-22 11:17:23 +02:00
- [Getting help ](help.md )
- [Contributing ](../CONTRIBUTING.md )
2015-05-13 09:32:14 +02:00
2015-06-01 05:08:28 +02:00
### Reference and advanced topics
2015-04-16 02:23:40 +02:00
2015-06-01 05:08:28 +02:00
- [Glossary ](glossary.md )
2015-05-22 11:17:23 +02:00
- [Authentication ](authentication.md )
2015-04-16 02:23:40 +02:00
- [Working with notifications ](notifications.md )
2015-05-22 11:17:23 +02:00
2015-06-01 05:08:28 +02:00
### Development resources
2015-05-22 11:17:23 +02:00
- [Storage driver model ](storagedrivers.md )
- [Registry API ](spec/api.md )
2015-06-01 05:08:28 +02:00
<!--
- [Building the registry ](building.md )
- [Architecture notes ](architecture.md )
-->
2015-05-22 11:17:23 +02:00
2015-06-01 05:08:28 +02:00