搭建docker私有仓库
Posted andy9468
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建docker私有仓库相关的知识,希望对你有一定的参考价值。
保存镜像的地方成为仓库(registry)。目前有2种仓库:公共仓库和私有仓库。
最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册。公共仓库网站:https://hub.docker.com
怎么新建和使用公共仓库,请百度。这里关注私有仓库的搭建。
那么怎么构建属于自己的私有仓库呢?
可以使用registry镜像来搭建本地的私有仓库。
具体步骤如下:
我想在A机器上搭建docker私有仓库。
1、在A机器上安装docker服务
百度查。
2、在A机器上下载registry镜像
docker pull registry
3、指明私有仓库的访问地址和方式为http
为了避免报错
vim /etc/docker/daemon.json 写入: {"insecure-registries":["10.1.2.3:5000"]}
10.1.2.3 是A的ip地址。
4、重启docker
systemctl restart docker
5、新建私有仓库的容器
验证一个可用端口(未被占用的端口)
netstat -lnp |grep :5000
用registry镜像,启动一个仓库容器,默认情况下仓库存放于容器内的/tmp/registry目录下,使用-v 选项可以将本地目录挂载到容器内的/tmp/registry下使用,这样就不怕容器被删除后,镜像也随之丢失。
在本地搭建一个私有仓库服务,监听5000端口
docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
验证一下私有仓库是否存在了
http://10.1.2.3:5000/v2
6、上传镜像到私有仓库
使用docker tag 命令将要上传的镜像标记为10.1.2.3:5000/redis
docker tag redis 10.1.2.3:5000/redis
用docker push 上传标记好的镜像
docker push 10.1.2.3:5000/redis
查看私有仓库的目录,访问
10.1.2.3:5000/v2/_catalog
7、验证私有仓库
现在我们可以先将我们本地的10.1.2.3:5000/redis和redis先删除掉,
docker rmi redis docker rmi 10.1.2.3:5000/redis
然后使用docker pull从我们的私有仓库中获取redis镜像,
docker pull 10.1.2.3:5000/redis docker images
参考:https://www.cnblogs.com/lienhua34/p/4922130.html
以上是关于搭建docker私有仓库的主要内容,如果未能解决你的问题,请参考以下文章