Are you planning to setup own Docker private registry in your lab? Are you planning to bring all the in-house developers to work internally with the Docker code for your customer requirement which you might not be interested to expose to the external world? Do you want to see all the tagged images in UI rather than logging into the host server and running lengthy list of images.If yes, then this is going to be perfect guide for you.

https://collabnix.com/archives/2903

Let’s say you have dozens of Docker images which you have recently committed but you want them to push to your private repository rather than Docker hub. First of all, run the below command to setup private registry in a single shot:

Settting up Local Registry Server

~# docker run -d -p 5000:5000 -v \
/mnt/container_volumes/docker_registry/:/tmp/registry registry
Unable to find image ‘registry’ locally
Pulling repository registry
1694982b51a1: Download complete
d3a1f33e8a5a: Download complete
c22013c84729: Download complete
d74508fb6632: Download complete
91e54dfb1179: Download complete
83a38368e5e3: Download complete
d770c6c01e28: Download complete
99c8eb1b53d1: Download complete
9d041e8edc7b: Download complete
0f2f1cbafe0e: Download complete
49a7a2995fdc: Download complete
0408c3f0abf5: Download complete
d59f2efbdcce: Download complete
9b2e6b2af83a: Download complete
2ef8b5c0a6773bb59c11917baa769cf7327722350903cc75500cdc5c831fac36
:~#

The above command uses the mounted storage volume /mnt/container_volumes/docker_registry/ to dump all the registry data.

Verifying the Registry Server
Verify that registry is up and running through http://10.94.214.186:5000

docker_regsitry

It shows the entry “\”docker-registry server\”” which means it is up and running

Pushing an image to Private Docker registry

Now lets push an image to our private repository:

Say, I have an ubuntu image where I am going to install a customized puppet pulling it form my local repository.

#docker run -it ubuntu /bin/bash
#apt-get install puppet

Press Ctrl+P & Q to come out of container shell without stopping it.

Committing the container

#docker commit -m “Puppet_Docker” -a “Ajeet Raina” 11ac6 collabnix/puppet_docker:v1.0

# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL
SIZE
collabnix/puppet_docker v1.0 f5640376af3e 2 minutes ago 224.5 MB

Tagging the Docker Image

root@dell-virtual-machine:~# docker tag f564037 localhost:5000/collabnix/puppet_docker:v1.0

Pushing the Docker image to Private Registry

~# docker push localhost:5000/collabnix/puppet_docker:v1.0
The push refers to a repository [localhost:5000/collabnix/puppet_docker] (len: 1)
Sending image list
Pushing repository localhost:5000/collabnix/puppet_docker (1 tags)
d3a1f33e8a5a: Image successfully pushed
c22013c84729: Image successfully pushed
d74508fb6632: Image successfully pushed
91e54dfb1179: Image successfully pushed
f5640376af3e: Image successfully pushed
Pushing tag for rev [f5640376af3e] on {http://localhost:5000/v1/repositories/collabnix/puppet_docker/tags/v1.0}

Setting up Docker Registry UI

Lets try out an interesting UI for our registry server.

#docker run -d -e ENV_DOCKER_REGISTRY_HOST=10.94.214.186 -e ENV_DOCKER_REGISTRY_PORT=5000 -p 8080:80 konradkleine/docker-registry-frontend
d131104e34a33d42c577c7dfb29cd05cf6d572ed6e174166ad102bc01b9b5a0f

Just one command and you can see a fancy UI for our registry server.

docker-front-end-1

docker_registry_frontend

Cool..here we go. A Docker registry with cool UI is up and running.

Clap

(2)
Categories: Docker

Ajeet Raina

My name is Ajeet Singh Raina and I am an author of this blogging site. I am a Docker Captain, ARM Innovator & Docker Bangalore Community Leader. I bagged 2 special awards last year(2019) : Firstly, “The Tip of Captain’s Hat Award” at Dockercon 2019, San Francisco and secondly, “2019 Docker Community Award“. I was overwhelmed to receive the first award in front of around 5000 audience.

10 Comments

сайт · 22nd June 2016 at 2:03 pm

I reckon something really interesting about your web blog so I saved
to fav.

Sunil Kumar · 23rd June 2016 at 3:20 pm

hi ,
I’n not able to see any repositories in the UI. Please let me know how to see them

    ajeetraina · 26th June 2016 at 2:12 pm

    May I know if you followed the above steps completely?

Jackson Yurchiak · 11th October 2016 at 1:35 pm

This is my first time pay a visit at here and i am actually happy to read all at alone place.|

Spartherm · 12th October 2016 at 4:04 am

Fascinating blog! Is your theme custom made or did you download it from somewhere? A theme like yours with a few simple adjustements would really make my blog stand out. Please let me know where you got your design. Many thanks

    ajeetraina · 12th October 2016 at 3:22 pm

    This is purely wordpress based and completely free. I didn’t work hard on customizing this site, rather spent considerable amount of time for writing about open source tools like Docker containers. You can search for wordpress theme called “Refur”. Hope it helps.

Jim Zonia · 10th November 2016 at 4:20 am

What i do not understood is actually how you’re not really much more well-liked than you may be now. You’re very intelligent. You realize therefore considerably relating to this subject, made me personally consider it from so many varied angles. Its like men and women aren’t fascinated unless it’s one thing to do with Lady gaga! Your own stuffs nice. Always maintain it up!

VellaLKilkus · 18th November 2016 at 12:12 pm

We have read countless content on the topic
of the blogger lovers except this article is in fact
a nice post, make it up.

Satender Ruhil · 19th December 2016 at 5:29 pm

If you are using latest registry version “v2”. Then you should use v2 version of front-end too.
#docker run -d -e ENV_DOCKER_REGISTRY_HOST=10.94.214.186 -e ENV_DOCKER_REGISTRY_PORT=5000 -p 8080:80 konradkleine/docker-registry-frontend:v2

john holmes · 2nd March 2017 at 11:48 pm

Very neat post.Much thanks again. Keep writing.

Leave a Reply

Your e-mail address will not be published. Required fields are marked *