docker私有仓库registry

Docker官方提供了公共镜像仓库——Docker Hub。我们可以从上面拉取镜像到本地,也可以把自己的镜像推送上去,但是,有时候我们的服务器无法访问境外网站,或者考虑到安全性,自己的镜像不适合放到公网中,那我们就需要搭建自己的私有仓库来存储和管理自己的镜像。
Docker registry是存储Docker image的仓库,我们可以将registry容器其部署到某个服务器,将镜像上传到registry容器,然后可以从registry拉取镜像。

搭建私有仓库

# 1、拉取私有仓库镜像
docker pull registry
# 2、启动私有仓库容器
docker run -id -p 5000:5000 --name=registry -v /root/docker-data/resp/data:/var/lib/registry registry:latest
# 3、配置docker信任私有仓库
vim /etc/docker/daemon.json
# 在daemon.json中,添加一个键值对,让docker新人私有仓库地址
{"insecure-registries": ["服务器ip:5000"]}
# 4、重启docker服务和私有仓库容器
systemctl restart docker
docker start registry

在这里插入图片描述
关于docker run命令的解释:

  • -p 5000:5000:我们从Docker Hub官网中的registry的dockerfile内容中可以看到,暴露的端口是5000,也就是默认的registry容器服务端口是5000,所以需要映射容器的5000端口。
  • -v /root/docker-data/resp/data:/var/lib/registry:从从Docker Hub官网的VOLUME字段可以看出,镜像上传到registry容器后,应该是存放到registry的/var/lib/registry目录下,为了预防registry容器突然下线等情况,我们最好是给registry配置数据卷。
  • 注意: 从dockerfile内容来看,启动registry容器时会执行一系列命令,所以我们在docker run命令后面不要再加个command命令了,否则覆盖了dockerfile的CMD命令导致容器内的相关应用没有启动。

在这里插入图片描述

通过http://服务器ip:5000/v2/_catalog,可以获取到空仓库数据
在这里插入图片描述

镜像上传私有仓库

私有库搭建好之后,就可以将本地镜像上传至私有库

# 1、标记镜像为私有仓库的镜像
docker tag centos:7 服务器ip:5000/centos:7
# 2、上传标记的镜像
docker push 服务器ip:5000/centos:7

在这里插入图片描述
centos:7镜像上传到registry服务器成功后,访问http://服务器ip:5000/v2/_catalog可以看到有对应的镜像名称。
在这里插入图片描述
访问http://服务器ip:5000/v2/镜像名称/tags/list可以查询到对应的版本列表
在这里插入图片描述

拉取镜像

可以从私有库上拉取镜像到本地:

docker pull 服务器ip:5000/centos:7

在这里插入图片描述

其他

1、如果想修改registry容器的服务端口,可以通过设置环境变量REGISTRY_HTTP_ADDR来更改。如将registry容器的服务端口设置为5001:docker run -id -e REGISTRY_HTTP_ADDR=0.0.0.0:5001 -p 5000:5001 --name=registry -v /root/docker-data/resp/data:/var/lib/registry registry:latest

Docker中,可以通过使用Portus来实现docker私有仓库Registry的可视化。Portus是一个带有UI管理功能的仓库管理软件,它可以与Registry一起使用,提供更方便的图形化用户界面来浏览、检索和管理Docker镜像仓库。通过Portus,用户可以通过浏览器来管理项目和命名空间,进行权限管理,进行镜像的复制和同步,以及记录和追踪所有对镜像仓库的操作,用于审计管理。同时,Portus还支持与企业现有的AD/LDAP进行集成,方便进行鉴权认证管理。总之,使用Portus可以使docker私有仓库Registry的管理更加简单和直观。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Docker仓库之企业级可视化私有仓库Harbor(安装、快速、入门)](https://blog.csdn.net/qq_41417660/article/details/106809535)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [docker私有镜像仓库registry及其可视化系统Portus的搭建【转】](https://blog.csdn.net/weixin_33898876/article/details/85966303)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值