仓库是集中存放镜像的地方,分为公共仓库和私有仓库。一个容易与之混肴的概念是注册服务器。实际上注册服务器是存放仓库的具体服务器,一个注册服务器上可以有多个仓库,而每个仓库下面可以有多个镜像。从这方面来说,可将仓库看做一个具体的项目或目录。例如对于仓库地址private-docker.com/ubuntu来说,private-docker.com是注册服务器地址,ubuntu是仓库名。

1.Docker Hub公共镜像市场

目前Docker官方维护了一个公共镜像仓库https://hub.docker.com,其中已经包括超过上万的镜像。大部分镜像需求,都可以通过Docker Hub中直接下载镜像来实现。

(1)登录

可以通过命令行执行docker login命令输入用户名和密码、邮箱等来完成注册和登录。注册成功后,本地用户目录.dockerfile中将保存用户的认证信息。

登录成功的用户可以上传个人制造的镜像。

(2)基本操作

用户无需登录即可通过docker search命令来查找官方仓库中的镜像,并利用docker pull 命令来将它下载到本地。

例如:

搜寻centos的镜像

下载centos镜像

(3)自动创建

自动创建功能对于需要经常升级镜像内程序来说,十分方便。有时候,用户创建了镜像,安装了某个软件,如果软件发布新版本则需要手动更新镜像。

而自动创建允许用户通过Docker Hub指定跟踪一个目标网络(目前支持Github或BitBucket)上的项目,一旦项目发生新的提交,则自动执行创建。

要配置自动创建,包括如下步骤:

a.创建并登陆Docker Hub,以及目标网站;*在目标网站中连接账户到Docker Hub;

b.在Docker Hub中配置一个"自动创建";

c.选取一个目标网站中的项目(需要含Dockerfile)和分支;

d.指定Dockerfile的位置,并提交创建;

之后,可以在Docker Hub的“自动创建”页面中跟踪每次创建的状态。

2.时速云镜像市场

时速云镜像市场,通过百度搜索一大把,阿里云等是比较有名的。当然通常是要收费的。

3.搭建本地私有仓库

(1)使用registry镜像创建私有仓库

docker run -d -p 5000:5000 registry
这将自动下载并启动一个registry容器,创建本地的私有仓库服务。

默认情况下,会将仓库建立在容器的/tmp/registry目录下。可以通过-v参数来将镜像文件存放在本地的指定路径。

例如下面的例子将上传的镜像放到/opt/data/registry目录:

docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

此时,在本地将启动一个私有仓库服务,监听端口为5000

(2)管理私有仓库

docker tag ubuntu:14.04 10.0.2.2:5000/test

使用docker push 上传标记的镜像

docker push 10.0.2.2:5000/test

注意:如果要使用安全证书,用户可以从比较知名的CA服务商申请公开的SSL/TLS证书,或者使用openssl等软件自行生成。

Docker实战(三)之访问Docker仓库的更多相关文章

  1. 详解docker实战之搭建私有镜像仓库 - kurbernetes

    1.实战目的 搭建企业私有的镜像仓库,满足从开发环境推送和拉取镜像.当我们使用k8s来编排和调度容器时,操作的基本单位是镜像,所以需要从仓库去拉取镜像到当前的工作节点.本来使用公共的docker hu ...

  2. Docker(三):Docker仓库配置

    1.仓库介绍 仓库(repository)用来集中管理Docker镜像,支持镜像分发和更新. 目前世界上最大最知名的公共仓库是Docker官方的Docker Hub,国内比较知名的有:Docker P ...

  3. Docker实战(二)之操作Docker容器

    容器是Docker的另外一个核心概念.简单来说,容器是镜像的一个运行实例.所不同的是,镜像是静态的只读文件,而容器带有运行时需要的可写文件层.如果认为虚拟机是模拟运行的一整套操作系统系统(包括内核,应 ...

  4. Docker实战(一)之使用Docker镜像

    镜像是Docker三大核心概念中最为重要的,自Docker诞生之日起“镜像”就是相关社区最为热门的关键字. Docker运行容器前需要本地存在对应的镜像,如果镜像没有保存至本地,Docker会尝试先从 ...

  5. docker学习(三) 安装docker的web可视化管理工具

    1.docker是一个一款很轻便的应用容器引擎,为了更好的管理和使用docker,使用web可视化管理工具似乎更符合大多数人的需求.在这里,我给大家分享下自己使用过的几款web工具:docker UI ...

  6. Docker | 第三章:Docker常用命令

    前言 上一章节,简单介绍了在CentOS下的Docker的安装过程,以及运行了一个官方提供的Hello,World镜像运行了第一个Docker.就像上一章中,验证Docker是否安装成功,我们执行的是 ...

  7. Ubuntu安装 Docker CE,VNC访问docker图形界面并安装ROS

    从包安装 如果您无法使用Docker的存储库来安装Docker CE,则可以下载.deb适用于您的发行版的 文件并手动安装.每次要升级Docker CE时都需要下载新文件. 安装Docker CE,将 ...

  8. Docker(40)- docker 实战三之安装 ES+Kibana

    背景 参考了狂神老师的 Docker 教程,非常棒! https://www.bilibili.com/video/BV1og4y1q7M4?p=16 es 前言 es 暴露的端口很多 es 十分耗内 ...

  9. 深入浅出Docker(三):Docker开源之路

    背景 Docker从一开始的概念阶段就致力于使用开源驱动的方式来发展,它的成功缘于国外成熟的开源文化氛围,以及可借鉴的社区运营经验.通过本文详细的介绍,让大家可以全面了解一个项目亦或者一项技术是如何通 ...

随机推荐

  1. 注重结构、语义、用户体验的Tab选项卡

    效果如下图所示: HTML code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...

  2. Vue2.0项目打包后只能访问首页,其他页面路径错误找不到

    原因是你使用了vue-router的history,可以尝试去掉  // mode:"history",

  3. HTML5 Boilerplate

    time: 2016-10-20 20:00 HTML5 Boilerplate(H5BP)是一个由 Paul Irish(Google Chrome 开发人员.jQuery 项目成员.Moderni ...

  4. opencv3.2.0形态学滤波之腐蚀

    /* 腐蚀(erode)含义: 腐蚀和膨胀是相反的一对操作,所以腐蚀就是求局部最小值的操作,腐蚀操作使原图中 国的高亮部分被腐蚀,效果图比原图有更小的高亮的区域. 腐蚀函数原型API及参数同膨胀相同 ...

  5. the cause of StringBuild class

    如果我们对字符串进行拼接操作,每次拼接,都会创建一个新的String对象,既耗时,又浪费空间,而StringBuild类可以解决这个问题. 那么StringBuild类是如果解决的呢? 因为Strin ...

  6. Vue 框架-04-计算属性

    Vue 框架-04-计算属性 计算属性是什么? 大家可以去看官网解释:计算属性和侦听器 今天的第一个小实例: 为啥先放折磨一个实例,之前数据绑定的就已经可以实现了,看起来那么简单,就是为了告诉大家,当 ...

  7. linux 用户配置文件及其相关目录

    用户配置文件及其相关目录: /etc/passwd 用户信息文件/etc/shadow 影子文件/etc/group 组信息文件/etc/gshadow 组密码文件邮箱目录模板目录 /etc/pass ...

  8. Django Redis存储session会话

    通常redis都是用来保存session.短信验证码.图片验证码等数据. 在django上使用redis,先要安装一个包: pip install django-redis==4.8.0(我用的dja ...

  9. 相关与卷积(数字信号处理)的数学原理及 Python 实现

    数学原理 在数字信号处理中,相关(correlation)可以分为互相关(cross correlation)和自相关(auto-correlation). 互相关是两个数字序列之间的运算:自相关是单 ...

  10. spring boot(14)-pom.xml配置

    继承spring-boot-starter-parent 要成为一个spring boot项目,首先就必须在pom.xml中继承spring-boot-starter-parent,同时指定其版本 & ...