简述Docker镜像、容器、仓库概念

摘要:
当容器从图像开始时,Docker将在图像的顶部创建一个可写层,图像本身将保持不变。有时,您可以看到Docker仓库和注册服务器是混淆的,它们没有严格区分。目前,最大的公共仓库是DockerHub,它存储了大量图像供用户下载。包括DockerPool在内的国内公共仓库可以提供稳定的国内访问。如果用户不想公开共享自己的图像文件,Docker还支持用户在本地网络中创建只能自己访问的私有仓库。

Docker镜像

Docker镜像(Image)类似于虚拟机的镜像,可以将他理解为一个面向Docker引擎的只读模板,包含了文件系统。

例如:一个镜像可以完全包含了Ubuntu操作系统环境,可以把它称作一个Ubuntu镜像。镜像也可以安装了Apache应用程序(或其他软件),可以把它称为一个Apache镜像。

镜像是创建Docker容器的基础,通过版本管理和增量的文件系统,Docker提供了一套十分简单的机制来创建和更新现有的镜像。用户可以从网上下载一个已经做好的应用镜像,并通过命令直接使用。总之,应用运行是需要环境的,而镜像就是来提供这种环境。

Docker容器

Docker容器(Container)类似于一个轻量级的沙箱子(因为Docker是基于Linux内核的虚拟技术,所以消耗资源十分少),Docker利用容器来运行和隔离应用。

容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、互不可见的。

可以吧每个容器看作一个简易版的Linux系统环境(包括了root用户权限、进程空间、用户空间和网络空间),以及与运行在其中的应用程序打包而成的应用盒子。

镜像自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。就像用ISO装系统之后,ISO并没有什么变化一样。

Docker仓库

Docker仓库(Repository)类似与代码仓库,是Docker集中存放镜像文件的场所。

有时候会看到有资料将Docker仓库和注册服务器(Registry)混为一谈,并不严格区分。实际上,注册服务器是存放仓库的地方,其上往往存放着多个仓库。每个仓库集中存放某一类镜像,往往包括多个镜像文件,通过不同的标签(tag)来进行区分。例如存放Ubuntu操作系统镜像的仓库,称为Ubuntu仓库,其中可能包括14.04,12.04等不同版本的镜像。

根据存储的镜像公开分享与否,Docker仓库分为公开仓库(Public)和私有仓库(Private)两种形式。

目前,最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括Docker Pool等,可以提供稳定的国内访问。如果用户不希望公开分享自己的镜像文件,Docker也支持用户在本地网络内创建一个只能自己访问的私有仓库。

当用户创建了自己的镜像之后就可以使用push将它上传到指定的公有或则私有仓库。这样用户下次在另一台机器上使用该镜像时,只需将其从仓库pull下来就可以了。

免责声明:文章转载自《简述Docker镜像、容器、仓库概念》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇NETCore Bootstrap Admin 通用后台管理权限 [2]: Blazor 版本介绍oracle系统包——dbms_random用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

docker使用以及dockerfile编写

一 docker常用命令 1. service docker start 2. docker images        显示所有镜像 3. docker ps [-a]          显示正在运行的容器,-a显示所有容器 4. docker run -i -t repo:tag cmd 由镜像创建一个容器,-i表示交互,-t表示伪终端 5. dock...

创建docker容器遇到的错误

1.问题截图   2.问题描述  出现该问题就是docker版本和系统版本不兼容导致的.   现在的系统版本和docker的版本如下:   3.问题解决   安装低版本的docker或者高版本的系统(Centos7.4以上)即可解决.   安装低版本的docker地址: https://www.cnblogs.com/jialanyu/p/1087545...

发现一个国内牛逼的maven仓库,速度真的太快了

前天网上下了一个项目,在公司还好,网络比较流畅,很快就把依赖下好了;回家的时候,想耍耍,结果下了一天也没把依赖下好,速度是几k每秒,甚至一k每秒,哎~心都碎了,网上一搜,结果发现了一个惊天的用nexus搭建的maven私服,阿里云的,那下载速度真是杠杠的; 配置很简单,修改conf文件夹下的settings.xml文件,添加如下镜像配置: <mir...

5款优秀的开源克隆软件

原文:5 Awesome Open Source Cloning Software,byNIX CRAFTonAUGUST 22, 2014 翻译:攻城狮凌风/CHB 转载请注明! 克隆是指将一台服务器上硬盘中的内容拷贝至一个存储媒介(另外的硬盘)或者是一个镜像文件中。复制磁盘在现代数据中心中很有价值,它的应用如下: 1.全系统备份 2.系统还原 3.重...

k8s命令

编辑pod版本号等信息kubectl edit deployment ams-metric -n manage导出容器内容到文件docker export 1ceefea8d9ff > calc.tar加载tar到本地仓库docker load -i ams-access-1.0.PC5.tar 快速从容器push到镜像仓库docker commit...

Docker快速指南

Docker使用Go语言开发,基于Linux内核的cgroup、namespace以及AUFS等技术对进程进行封装隔离,是一种操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。 Docker则使用宿主机内核提供的隔离机制创建沙盒环境,容器内的应用进程直接运行于宿主的内核。 因为容器内没有虚拟硬件和内核,容器在启动时间、...