docker部署私有镜像仓库

docker部署私有镜像仓库

1.背景
容器镜像的管理主要围绕镜像仓库(Registry)来进行。在实际应用中,无论开发人员或CI系统发布镜像,还是测试人员或运维人员下载镜像,都要通过镜像仓库来完成。镜像仓库分为公有仓库和私有仓库两种,例如Docker Hub就属于公有仓库,公有仓库的优点是可以直接使用,无须自己维护。但考虑到访问效率和镜像安全等方面的原因,企业可构建自己内部的私有仓库,供内部员工上传、下载镜像使用。
2.系统环境
docker私有仓库主机 192.168.0.153 19.03.8 CentOS Linux release 7.6.1810 (Core)
docker主机 192.168.0.152 19.03.8 CentOS Linux release 7.5.1804 (Core)3.构建私有仓库(在192.168.0.153这台主机上操作)
3.1 下载registry镜像
dock pull registry (默认下载最新版本)如果下载速度过慢,建议Docker配置官方国内加速镜像
vim /etc/docker/daemon.json
{ “registry-mirrors”: [“https://9w1w7024.mirror.aliyuncs.com”]
###实验中使用个人在阿里云注册的加速器}
注意:目前常用三方加速器有: 网易 、 USTC 、 DaoCloud 、 阿里云。
3.2 创建容器并运行
docker run -itd -p 192.168.0.153:5000:5000 -v /data/docker/registry:/var/lib/registry --restart=always --name registry registry:latest
参数说明:
-itd:开启交互模式,分配一个伪终端,以后台方式运行
-p:把容器的5000端口映射到宿主机指定IP的5000端口上
-v:把容器的/var/lib/registry目录映射到宿主机的/data/docker/registry目录,/var/lib/registry是容器中存放镜像文件的目录,来实现数据的持久化
–restart=always:重启策略,容器异常退出会自动重启容器
–name:指定容器的名称为registry3.3
查看仓库中的镜像
curl http://192.168.0.153:5000/v2/_catalog{“repositories”:[]}
注意:因为才刚运行,还未上传任何镜像,所以是空的。
4.测试(在192.168.10152这台主机上操作)
4.1 将之前创建好的镜像打上标签
[root@localhost ~]# docker tag a674d23325b0 192.168.0.153:5000/kibana:latest
[root@localhost ~]# docker tag 5acf0e8da90b 192.168.0.153:5000/elasticsearch:latest
[root@localhost ~]# docker tag 070a535b6ea6 192.168.0.153:5000/prima/filebeat:latest
4.2 修改配置文件,添加私有仓库地址[root@localhost ~]# vim /etc/docker/daemon.json
{ “registry-mirrors”: [“https://9w1w7024.mirror.aliyuncs.com”], “insecure-registries”: [“192.168.0.153:5000”]}
4.3 重启docker服务
systemctl restart docker
4.4 将镜像传到私有仓库
docker push 192.168.0.153:5000/elasticsearch:latest
4.5 查看私有仓库中的镜像
[root@localhost ~]# curl http://192.168.0.153:5000/v2/_catalog {“repositories”:[“elasticsearch”,“logstash”,“nginx”,“prima/filebeat”,“tomcat”]}
4.6查看私有仓库中某个镜像所有版本
[root@localhost ~]# curl -XGET http://192.168.0.153:5000/v2/elasticsearch/tags/list{“name”:“elasticsearch”,“tags”:[“6.6.1”,“latest”]}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Docker是一种流行的容器化技术,可以将应用程序及其依赖项打包成一个独立的容器,方便在不同环境中进行部署和运行。而本地私有仓库则是用于存储和管理这些Docker镜像的地方。下面是关于如何在本地部署私有仓库的步骤: 1. 安装Docker:首先需要在你的机器上安装Docker。你可以根据操作系统的不同,选择合适的安装方式。 2. 创建私有仓库容器:使用以下命令创建一个本地私有仓库容器: ``` docker run -d -p 5000:5000 --restart=always --name registry registry:2 ``` 这个命令会在本地启动一个名为registry的容器,并将其映射到主机的5000端口。 3. 配置Docker客户端:默认情况下,Docker客户端只能从公共仓库中拉取镜像。为了能够使用本地私有仓库,需要进行一些配置。在Docker客户端的配置文件(通常是`/etc/docker/daemon.json`)中添加以下内容: ``` { "insecure-registries": ["localhost:5000"] } ``` 这样就允许Docker客户端从本地私有仓库拉取镜像了。 4. 推送和拉取镜像:现在你可以使用`docker push`命令将本地构建的镜像推送到私有仓库中,例如: ``` docker build -t myimage:tag . docker tag myimage:tag localhost:5000/myimage:tag docker push localhost:5000/myimage:tag ``` 同样,你也可以使用`docker pull`命令从私有仓库中拉取镜像: ``` docker pull localhost:5000/myimage:tag ``` 5. 验证私有仓库:你可以通过访问`http://localhost:5000/v2/_catalog`来验证私有仓库是否正常工作。如果返回一个空的JSON对象`{}`,表示私有仓库是空的。 希望以上步骤对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值