镜像仓库 Registry 介绍及实践-http

镜像仓库 Docker Registry 实践-http协议

镜像仓库(Registry)是存储和分发容器镜像的服务器应用。容器镜像是容器的可移植打包格式,包含了应用程序及其依赖的所有内容。镜像仓库主要用于存储这些镜像,并允许用户通过网络将镜像拉取到本地进行部署。

镜像仓库的主要功能

  1. 镜像存储: 提供集中式存储,管理多种版本的容器镜像。
  2. 镜像分发: 通过网络分发镜像,支持多种镜像传输协议。
  3. 权限控制: 通过用户认证和授权管理对镜像的访问权限。
  4. 镜像管理: 提供镜像的标签、版本控制等管理功能。

Docker Registry 是一个开源的镜像仓库实现,允许用户在本地或云端搭建自己的镜像仓库,提供了高效的镜像存储和分发功能。

下面记录在本地机器(已经安装docker)搭建和使用 Docker Registry。

1. 部署 Docker Registry

使用 Docker 容器运行一个 Registry 服务:

docker run -d -p 5000:5000 --restart=always --name registry -v /mnt/registry:/var/lib/registry registry:2

root@harbor:~/harbor# docker run -d -p 5000:5000 --restart=always --name registry -v /mnt/registry:/var/lib/registry registry:2
2c60ce3bd400bf8307869e17b2b6308e8ab4a5c1a905378ac4386bfc76585227
root@harbor:~# docker ps
CONTAINER ID   IMAGE     COMMAND     CREATED       STATUS     PORTS             NAMES
2c60ce3bd400   registry:2   "/entrypoint.sh /etc…"   About a minute ago   Up About a minute   0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   registry
  • /mnt/registry:宿主机路径,可以自定义。
  • /var/lib/registryRegistry容器存放镜像的路径,路径是固定的。

这会启动一个在本地监听 5000 端口的镜像仓库服务。

说明:

  1. Docker 使用 /var/lib/docker 作为默认路径来存储所有 Docker 相关文件(包括镜像)。建议您添加附加存储卷,分别给 /var/lib/docker 和 /mnt/registry 挂载至少 100G。

2. 拉取、推送镜像到 Registry

拉取、推送镜像过程与一般使用其他镜像仓库时的操作类似,如果客户端和registry位于同一台机器,host为localhost;如果客户端位于远端,使用registry所在机器的ip地址作为host。

2.1 调用接口查看当前仓库镜像列表

Docker Registry没有像harbor那样的web界面可以直观的查看镜像仓库列表,需要通过调用接口查看:

curl -X GET http://IP:port/v2/_catalog

以本地调用查看为例,由于是新搭建的registry实例,仓库中是空的:

root@harbor:~# curl -X GET http://l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lldhsds

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值