Docker创建私有仓库

本文介绍了如何利用Docker官方的Registry镜像创建本地私有仓库。首先,通过运行`docker run -p 5000:5000 registry:2.0`启动Registry服务。接着,标记并推送`ubuntu:16.04`镜像到本地仓库。最后,讨论了在生产环境中通过nginx实现反向代理以增强安全性。
摘要由CSDN通过智能技术生成

 通过Docker官方提供的镜像Registry 创建本地私有仓库,创建方式和启动一个普通镜像的方式是一样。

1.在私有仓库服务器快速创建镜像仓库,运行如下代码:

    docker run -p 5000:5000 registry:2.0

运行上述命令后,会从DockerHub上拉取registry镜像并在本地启动Registry服务,并监听5000端口。 

2.列出本地镜像

docker images

可以看到registry的镜像和很多个本地镜像

3.下载一个ubuntu:16.04镜像,并且标记为私有仓库的版本,这里将ubuntu 16.04标记为localhost:5000/ubuntu:1604

  docker pull ubuntu:16.04

  1. docker tag ubuntu:16.04 localhost:5000/ubuntu:16.04

再次查看镜像可以看到多了一个标记为localhost:5000/ubuntu:1604的镜像

  1. 将本地镜像推送到本地仓库中
  1. docker push localhost:5000/ubuntu:16.04

  1. 查看本地仓库中的镜像列表
  1. curl http://localhost:5000/v2/ubuntu/tags/list

结果如下:

  1. 从本地仓库拉取一个镜像,在这之前先执行如下命令移除本地ubuntu:16.04镜像,保证从本地仓库拉取的镜像不是从缓存中获取。
  1. docker rmi -f  ubuntu:16.04

  1. Docker rmi -f localhost:5000/ubuntu:16.04

之后再查看镜像,只剩下registry这个镜像

拉取本地仓库中的镜像

  1. docker pull localhost5000/ubuntu:16.04

之后查看镜像如下:

 最后正常启动

但是在生产中直接暴露docker registry的5000端口不太安全,通常使用反向代理的方法让docker registry使用https安全协议,并且加一些认证,使得docker registry更加安全。

  可以通过nginx实现反向代理的搭建,并且在nginx中开启https安全协议,使用户在连接和使用docker registry时通过nginx在TLS安全传输层上进行数据的传输,而docker registry本身不对外暴露5000端口,只是从nginx中获取到用户发送来的操作指令。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值