Docker搭建本地仓库registry
最近了解了harbor,也可以搭建本地仓库,还有图形化界面,很方便我们上传到 Docker Hub 的镜像任何人都能够访问,虽然可以用私有 repository,但不是免费的。所以我们就搭建本地Registry,来管理我们自己的仓库。Docker 已经将 Registry 开源了,我们可以直接docker pull,Docker Hub 上也有官方的镜像 Registry,我们可以注...
最近了解了harbor,也可以搭建本地仓库,还有图形化界面,很方便
我们上传到 Docker Hub 的镜像任何人都能够访问,虽然可以用私有 repository,但不是免费的。
所以我们就搭建本地Registry,来管理我们自己的仓库。
Docker 已经将 Registry 开源了,我们可以直接docker pull,
Docker Hub 上也有官方的镜像 Registry,我们可以注册一个账号,docker login 登陆,然后下载镜像。
一,部署Registry
运行命令 docker pull registry
二,运行容器
-d
是后台启动容器。-p
将容器的 5000 端口映射到 Host 的 5000 端口。5000 是 registry 服务端口。-v
将容器 /var/lib/registry 目录映射到 Host 的 /myregistry,用于存放镜像数据。
上传到本地的镜像保存在/myregistry/docker/registry/v2/repositories/ 下面
查看正在运行的容器
打开浏览器,访问http://127.0.0.01:5000/v2/_catalog,可以查看到{"repositories": []} 表示现在仓库中,没有镜像images
三、在本地host上,重命名镜像,添加新的tag,使之与registry 相匹配
以busybox镜像为例,上传到本地仓库中,或者从Docker Hub 下载也可以、
镜像名称由 repository 和 tag 两部分组成,默认为latest。可以在docker build 时用格式image:tag指定,
而 repository 的完整格式为:[registry-host]:[port]/[username]/xxx
四、上传镜像到仓库中
成功会出现上述提示,表示本地的仓库默认使用的是https进行上传,那行是latest是重新上传出现的。
如果你在push镜像的时候出现问题,可能是因为我们启动的registry服务不是安全可信赖的.这个时候我们需要修改docker的配置文件/etc/default/docker,添加下面的内容: "- - insecure-registry 127.0.0.1:5000", 再重启docker 服务
五、删除下载的镜像,从本地镜像下载。
docker rmi 127.0.0.1:5000/busybox-test 删除镜像
docker pull 从本地镜像下载。
docker images 查看下载成功
最后在宿主机浏览器中访问127.0.0.1:5000/v2/_catalog,出现上传的镜像。
在此路径下,可以查看上传到本地的镜像。
更多推荐
所有评论(0)