Docker的三大核心概念之“仓库”篇

目录

前言

仓库知识点

仓库是什么

搭建仓库

搭建公共镜像仓库

 搭建私有仓库

总结


前言

Docker 的三个核心概念是镜像、容器和仓库,镜像仓库作为Docker技术的核心组件之一,其主要作用就是负责存储和分发 Docker 镜像的地方。本文详细介绍仓库一些知识点和如何搭建仓库。

 

仓库知识点

仓库是什么

Docker仓库(Repository)类似与代码仓库,是Docker集中存放镜像文件的场所。我们将镜像仓库分为公共镜像仓库和私有镜像仓库。公有镜像仓库是可以被任何人使用的,而私有镜像仓库则是指部署在公司或组织内部,主要用于自身应用Docker镜像存储、分发的镜像仓库。 

搭建仓库

搭建公共镜像仓库

公共镜像仓库一般是 Docker 官方或者其他第三方组织(腾讯云,阿里云等)提供的,允许所有人注册和使用的镜像仓库。以Docker Hub 为例,教你如何使用公共镜像仓库分发和存储镜像,具体步骤如下:

(1)注册dockerhub https://hub.docker.com/signup,需要有一个账号

 

 (2)注册完成后,点击创建仓库,新建一个仓库用于推送镜像。

 

 (3)创建好仓库后,使用docker login命令登录镜像服务器,输入对应的用户和密码,看到Login Succeeded表示登录成功

docker login

小贴士:如果想登录访问阿里云镜像服务器,则使用docker login registry.cn-beijing.aliyuncs.com,输入阿里云镜像服务的用户名密码即可。 

(4)登录好后,就可以推送镜像到自己创建的仓库了,在本地推送到自定义仓库前,我们需要使用docker tag命令将镜像“重命名”

docker tag tomcat daxiong6/mytomcat

(5)镜像“重命名”后,使用docker push命令就可以推送镜像到自己创建的仓库中了

docker push daxiong6/mytomcat

 此时,mytomcat这个镜像就被推送到自定义的镜像仓库了。

 

(6)最后,我们使用docker pull命令拉取mytomcat镜像

docker pull daxiong6/mytomcat

 搭建私有仓库

(1)实现下载下载本地仓库,命令如下:

docker pull registry

 

 (2)启动后,运行一个Registry镜像仓库的容器实例

docker run -d -ti --restart always\
        --name my-registry\
        -p 8000:5000\
        -v /my-registry/registry:/var/lib/registry\
 registry

 小提示:registry内部对外开放端口是5000,我这边改为8000。默认情况下,会镜像存放于容器内的/var/lib/registry(官网Dockerfile中查看)目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失。

(3)在客户端查看镜像仓库中的所有镜像

curl http://your-server-ip:8000/v2/_catalog

小提示:

(4)推送镜像到本地仓库,首先我们使用docker tag命令把 tomcat 镜像"重命名"为localhost:8000/mytomcat

docker tag tomcat localhost:8000/mytomcat     

 (5)使用docker push推送镜像到本地仓库

docker push localhost:8000/mytomcat

(6)查看本地仓库镜像 ,并拉取镜像

docker pull localhost:8000/mytomcat

小贴士:你也可以用Harbor作为一个企业级私有Registry服务器,提供了更好的性能和安全,提升了用户使用Registry构建和运行环境传输镜像的效率 ,但是Harbor 需要结合 Kubernetes 才能发挥其最大价值,本文就没有展开介绍。

总结

到此,相信你对docker仓库有一定的了解,可以使用公共镜像仓库存储和拉取镜像,还可以自己动手搭建一个私有的镜像仓库。

如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。欢迎关注,一起docker学习之旅!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值