Docker Registry搭建私有镜像仓库的实现方法
微服务的镜像会上传到Docker仓库保存,常用的公网Docker仓库有阿里云,网易云等,在企业局域网也可以搭建自己的Docker私有仓库,本教程使用Docker提供的私有仓库registry。
1.拉取私有仓库镜像
docker pull registry
2.创建启动私有仓库容器
docker run -dit -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name docker-registry registry
参数说明
- -dit:在容器中打开一个伪终端进行交互操作,并在后台运行
- -v:把宿主机的/data/registry目录挂载到容器/var/lib/registry目录(这个目录是registry容器中存放镜像文件的目录),来实现数据的持久化
- -p:映射端口,访问宿主机的5000端口就访问到registry容器的服务了
- --restart=always:这是重启的策略,假如这个容器异常退出会自动重启容器
- --name docker-registry:创建容器命名为docker-registry,你可以随便命名
- registry:pull下来的镜像
上边显示 registry镜像已经创建,并且docker-registry容器已经启动成功。访问:http://139.9.40.41:5000/v2/_catalog,响应结果如下:
{"repositories":[]}
上边的响应结果说明在docker私有仓库中还没有镜像。
默认docker-registry只允许https提交镜像,如下配置使docker-registry支持http,在/etc/docker下,创建daemon.json文件,写入:
{ "insecure-registries": [ "139.9.40.41:5000"] }
3.重启docker
systemctl restart docker
4.镜像上传至私有仓库
标记此镜像为私有仓库的镜像
docker tag docker.io/hello-world 139.9.40.41:5000/hello-world:v1
上传标记的镜像
docker push 139.9.40.41:5000/hello-world:v1
列出所有镜像
[root@2 docker]# curl http://139.9.40.41:5000/v2/_catalog {"repositories":["hello-world"]}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
docker部署Prometheus+Cadvisor+Grafana实现服务器监控
这篇文章主要为大家介绍了docker部署Prometheus+Cadvisor+Grafana实现服务器监控,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-11-11使用Docker Compose 实现nginx负载均衡的方法步骤
这篇文章主要介绍了使用Docker Compose 实现nginx负载均衡的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-05-05docker创建并运行一个MySql容器,并将宿主机直接挂载到容器
这篇文章主要介绍了docker创建并运行一个MySql容器,并将宿主机直接挂载到容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-09-09
最新评论