仓库 ( registry ) 是一个用来存放镜像的地方,当我们执行 docker pull centos 去拉取 centos 镜像时,默认是从 Docker Hub 这个公共仓库来拉取的;

对于企业来说,使用公共仓库明显是不可行的,因此我们可以自己搭建一个私有仓库;这里我用 192.168.1.1 用来搭私有仓库 ( 相当于服务端 ) ,用 192.168.1.2 来下载/上传镜像 ( 相当于客户端 )

192.168.1.1 ( 服务端 ) 搭建私有仓库:

[root@localhost ~]$ docker pull registry                   # 下载registry镜像,这个镜像是官方提供的,我们可以用它来创建私有仓库
[root@localhost ~]$ docker run -d -p 5000:5000 registry # 把registry镜像启动为容器,并映射宿主机的5000端口
[root@localhost ~]$ curl 127.0.0.1:5000/v2/_catalog # 查看目前仓库里都有哪些镜像,我们还没上传镜像上去,所以是空的
{"repositories":[]}

192.168.1.2 ( 客户端 ) 上传或下载镜像:

# 假设我现在有一个镜像,我要把这个镜像上传到私有仓库:
[root@localhost ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 1e1148e4cc2c 3 weeks ago 202MB # 需要先对镜像打一个标签,这个标签必须带有私有仓库的IP地址和端口:
[root@localhost ~]$ docker tag centos 192.168.1.1:5000/centos # 修改配置文件,指明私有仓库的地址,并重启docker:
[root@localhost ~]$ cat /etc/docker/daemon.json
{ "insecure-registries": ["192.168.1.1:5000"] }
[root@localhost ~]$ systemctl restart docker.service # 上传镜像:
[root@localhost ~]$ docker push 192.168.1.1:5000/centos # 查看服务端是否有上传的镜像:
[root@localhost ~]$ curl 192.168.1.1:5000/v2/_catalog
{"repositories":["centos"]} # 我们也可以下载镜像:
[root@localhost ~]$ docker pull 192.168.1.1:5000/centos

其他机器 ( 客户端 ) 如果想下载镜像,执行如下:

# 修改配置文件,指明私有仓库的地址,并重启docker:
[root@localhost ~]$ cat /etc/docker/daemon.json
{ "insecure-registries": ["192.168.1.1:5000"] }
[root@localhost ~]$ systemctl restart docker.service # 下载镜像:
[root@localhost ~]$ docker pull 192.168.1.1:5000/centos

Docker 仓库管理的更多相关文章

  1. [第十一篇]——Docker 仓库管理之Spring Cloud直播商城 b2b2c电子商务技术总结

    Docker 仓库管理 仓库(Repository)是集中存放镜像的地方.以下介绍一下 Docker Hub.当然不止 docker hub,只是远程的服务商不一样,操作都是一样的. Docker H ...

  2. Docker学习(五)——Docker仓库管理

    Docker仓库管理     仓库(Repository)是集中存放镜像的地方. 1.Docker Hub       目前Docker官方维护了一个公共仓库Docker Hub.大部分需求都可以通过 ...

  3. 【Docker】第四篇 Docker仓库管理

    一.仓库概述 仓库(Repository):Docker仓库主要用于镜像的存储,它是镜像分发.部署的关键.仓库分为公共仓库和私有仓库. 注册服务器(Registry)和仓库区别:注册服务器上往往存放着 ...

  4. Docker仓库管理

    1.# docker pull registry //下载registry镜像,registry为docker官方提供的一个镜像,我们可以用它来创建本地的docker私有仓库. 2.# docker ...

  5. 011.Docker仓库管理

    一 Docker仓库介绍 docker 仓库,即 registry,实现了镜像的管理.分发,同时还包括用户的认证.docker registry 仓库是一个无状态的.高可靠的服务器应用程序,用来存储d ...

  6. docker仓库管理(9)

    使用公共 Registry Docker Hub 是 Docker 公司维护的公共 Registry.用户可以将自己的镜像保存到 Docker Hub 免费的 repository 中.如果不希望别人 ...

  7. docker 实践(一)

    docker 简介 容器虚拟化,比传统的虚拟化轻量 2013年出现,发展非常迅猛 Redhat在6.5版本开始支持docker 使用go语言开发,基于apache2.0协议 开源软件,项目代码在git ...

  8. 012.Docker私有仓库多Harbor同步部署

    一 Harbor主从介绍 harbor官方默认提供主从复制的方案来解决镜像同步问题,通过复制的方式,我们可以实时将测试环境harbor仓库的镜像同步到生产环境harbor,类似于如下流程: Harbo ...

  9. 【Docker】Docker 目录

    目录: [Docker]第一篇 Docker的初始化安装部署 [Docker]第二篇 Docker镜像管理 [Docker]第三篇 Docker容器管理 [Docker]第四篇 Docker仓库管理

随机推荐

  1. 优雅的运用 Kotlin 的 null safety 特性,而不要简单的直接用 !!双感叹号

    对于 Null 的检查是 Kotlin 的特点之一.强制你在编码过程中考虑变量是否可为 null,因此可以避免很多在 Java 中隐藏的 NullPointerException. 但是,当你用插件直 ...

  2. [JS] js数字位数太大导致参数精度丢失问题

    http://www.cnblogs.com/littlestart/p/6023976.html

  3. android手机如何获取手机号

    两个方案:1 通过android.permission.READ_PHONE_STATE读取  2 通过短信过滤,读取手机号. 按照第1个方案,AndroidManifest.xml需要添加 < ...

  4. SpringBoot系列十二:SpringBoot整合 Shiro

    声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念:SpringBoot 整合 Shiro 2.具体内容 Shiro 是现在最为流行的权限认证开发框架,与它起名的只有最初 ...

  5. Maven创建Java项目

    Maven使用 archetype 来创建项目.要创建一个简单的 Java 应用程序,我们使用 maven-archetype-quickstart 插件.在下面的例子中,我们将创建一个基于Maven ...

  6. javapms部署之后首页不能正常显示问题

    今天在ligerui的技术群里看见了javapms,于是就到官网逛了逛 首先要做的就是了解了javapms使用到的技术 然后下载了程序安装包javapms_v1.1_beta(官网下载失败了,就bai ...

  7. 每天一个linux命令:Linux 目录结构

    对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统至关只要,下面 ...

  8. iOS:第三方库使用非ARC编译

    iOS: 解决某些第三方库因为ARC不能使用的问题 1.在target下面的build phases下有一个compile source,下面有很多待编译文件.可以看到一个compile flag,可 ...

  9. GridView分页的实现 ASP.NET c#(转)特好用

    要在GridView中加入 //实现分页 AllowPaging="true" //一页数据10行 PageSize="10" // 分页时触发的事件OnPag ...

  10. UNIX环境编程学习笔记(23)——信号处理初步学习

    lienhua342014-10-29 1 信号的概念 维基百科中关于信号的描述是这样的: 在计算机科学中,信号(英语:Signals)是 Unix.类 Unix 以及其他 POSIX 兼容的操作系统 ...