Docker私有仓库如何实现Registry部署
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,小编这次要给大家分享的是Docker私有仓库如何实现Registry部署,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。随着docker使用的镜像越来越多,就需要
千家信息网最后更新 2025年12月03日Docker私有仓库如何实现Registry部署
小编这次要给大家分享的是Docker私有仓库如何实现Registry部署,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
随着docker使用的镜像越来越多,就需要有一个保存镜像的地方,这就是仓库。目前常用的两种仓库:公共仓库和私有仓库。最方便的就是使用公共仓库上传和下载,下载公共仓库的镜像是不需要注册的,但是上传时,是需要注册的。
私有仓库最常用的就是Registry、Harbor两种,那接下来详细介绍如何搭建registry私有仓库,Harbor将在下一篇博文部署。
一、部署Registry私有仓库
案例描述
两台CentOS7.4,一台为Docker私有仓库;另一台为Docker客户端,测试使用;
两台服务器都需要安装Docker服务,请参考博文:安装Docker.v19版本
1、配置registry私有仓库
[root@centos01 ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf [root@centos01 ~]# sysctl -p net.ipv4.ip_forward = 1[root@centos01 ~]# vim /etc/docker/daemon.json {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"]} [root@centos01 ~]# systemctl reload docker [root@centos01 ~]# docker search registry [root@centos01 ~]# docker run -d -p 5000:5000 --name registry --restart=always -v /opt/registry:/var/lib/registry registry [root@centos01 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa7773d77b8a3 registry "/entrypoint.sh /etc…" 50 seconds ago Up 46 seconds 0.0.0.0:5000->5000/tcp registry[root@centos01 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZEregistry latest 708bc6af7e5e 3 months ago 25.8MBtomcat latest 1b6b1fe7261e 5 days ago 647MBhub.c.163.com/public/centos 6.7-tools b2ab0ed558bb 3 years ago 602MB[root@centos01 ~]# vim /etc/docker/daemon.json {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"],"insecure-registries":["192.168.100.10:5000"] }[root@centos01 ~]# systemctl reload docker 2、上传镜像到registry私有仓库
[root@centos01 ~]# docker tag hub.c.163.com/public/centos:6.7-tools 192.168.100.10:5000/image/centos:6.7 [root@centos01 ~]# docker push 192.168.100.10:5000/image/centos:6.7
二、配置Docker客户端访问私有仓库
[root@centos02 ~]# vim /etc/docker/daemon.json {"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"],"insecure-registries":["192.168.100.10:5000"] }[root@centos02 ~]# systemctl restart docker [root@centos02 ~]# docker pull 192.168.100.10:5000/image/centos:6.7 [root@centos02 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb 3 years ago 602MB至此registry私有仓库已经搭建完成,但是现在存在一个问题,如果这也部署的话企业内部所有人员皆可访问我们的私有仓库,为了安全起见,接下来为registry添加一个身份验证,只有通过了身份验证才可以上传或者下载私有仓库中的镜像。
三、配置registry加载身份验证
[root@centos01 ~]# yum -y install httpd-tools [root@centos01 ~]# mkdir /opt/registry-auth [root@centos01 ~]# htpasswd -Bbn bob pwd@123 > /opt/registry-auth/htpasswd [root@centos01 ~]# docker run -d -p 5000:5000 --restart=always \-v /opt/registry-auth/:/auth/ \-v /opt/registry:/var/lib/registry --name registry-auth -e "REGISTRY_AUTH=htpasswd" \-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" registry [root@centos01 ~]# docker tag tomcat:latest 192.168.100.10:5000/image/tomcat:1.0 [root@centos01 ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 no basic auth credentials[root@centos01 ~]# docker login 192.168.100.10:5000 Username: bob Password: ……………… Login Succeeded [root@centos01 ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 The push refers to repository [192.168.100.10:5000/image/tomcat]b0ac242ce8d3: Pushed5e71d8e4cd3d: Pushedeb4497d7dab7: Pushedbfbfe00b44fc: Pushedd39111fb2602: Pushed155d997ed77c: Pushed88cfc2fcd059: Pushed760e8d95cf58: Pushed7cc1c2d7e744: Pushed8c02234b8605: Pushed1.0: digest: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181c size: 2421[root@centos02 ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 Error response from daemon: Get http://192.168.100.10:5000/v2/image/tomcat/manifests/1.0: no basic auth credentials[root@centos02 ~]# docker login 192.168.100.10:5000 Username: bob Password: Login Succeeded [root@centos02 ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 1.0: Pulling from image/tomcat376057ac6fa1: Pull complete5a63a0a859d8: Pull complete496548a8c952: Pull complete2adae3950d4d: Pull complete0a297eafb9ac: Pull complete09a4142c5c9d: Pull complete9e78d9befa39: Pull complete18f492f90b9c: Pull complete7834493ec6cd: Pull complete216b2be21722: Pull completeDigest: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181cStatus: Downloaded newer image for 192.168.100.10:5000/image/tomcat:1.0192.168.100.10:5000/image/tomcat:1.0[root@centos02 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE192.168.100.10:5000/image/tomcat 1.0 1b6b1fe7261e 5 days ago 647MB192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb 3 years ago 602MB
看完这篇关于Docker私有仓库如何实现Registry部署的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。
仓库
私有
镜像
就是
文章
身份
配置
验证
接下来
内容
客户
客户端
常用
服务
不错
安全
人员
企业
兴趣
内容丰富
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库如何改值
用友t 数据库表
网络安全 通报流程
电影销售系统app软件开发
数据存储云服务器
国家网络安全与360
腾讯买的服务器怎么使用
共建网络安全共享网络文明文字
软件开发项目管理系统软件
自考本科网络安全真题
超思唯科石油软件开发公司
云南交通职业技术学院数据库
网络安全的规矩
小学生网络安全 画画
学习数据库应该看什么书
标杆产品成本数据库
smtp邮件服务器是什么
数据库系统分为两种模式
构建网络安全机制的途径是
阿里招聘遇到的网络安全
excel匹配出两列数据库
ping 魔兽服务器
图像分类导入自己的数据库
apex双人赛哪个服务器人少
业务数据库管理工具
北京网络安全会议论坛
内网web服务器系统
基本农田数据库建设
鸿盈网络技术有限公司怎么样
数据库中索引的使用与创建方式