Docker概述

Docker概述

为什么用Docker

我们经常遇到因为环境不一样而导致程序运行出错,而Docker的出现解决了这个问题。

Docker是一种虚拟化方式,Docker有很多优势:

  • 高效的系统资源利用率
  • 启动快
  • 统一的运行环境
  • 持续的交付和部署
  • 轻松便捷的迁移
  • 简便的维护和扩展

Docker的基本概念

可以说,Docker主要由三个部分组成。

  • 镜像(Image
  • 容器(Container
  • 仓库(Repository

Docker镜像

Docker镜像是一个特殊的文件系统,其包含了容器运行所需的程序、库、资源等,也包含了运行时准备的一些配置参数。镜像不包含任何动态数据,也就是其内容构建之后也不会被改变。

Docker镜像是分层存储的,构建时是一层一层的,这种特性也使它的复用、定制变得容易。

Docker容器

镜像(Image)和容器(Container)的关系,类似于面向对象程序设计中的对象的关系。容器是镜像运行时的实体,容器可以被创建、启动、停止、删除、暂停等。

容器的实质是进程,但这个容器进程运行于属于自己的独立的命名空间。容器内的进程是运行在一个隔离的环境里。

容器和镜像一样,分层存储。每一个容器运行时是以镜像为基础层,在其上创建一个当前容器的存储层,这个为容器运行时读写而准备的存储层称为容器存储层。(有点类似于电脑的内存)

容器不应该向其存储层内写入任何数据,容器存储层要保持无状态化。所有的文件写入操作,都应该使用数据卷(Volume)、或者绑定宿主目录,在这些位置的读写会跳过容器存储层,直接对宿主(或网络存储)发生读写,其性能和稳定性更高。

数据卷的生存周期独立于容器,容器消亡,数据卷不会消亡。因此,使用数据卷后,容器删除或者重新运行之后,数据却不会丢失。

Docker仓库

对于用过GitHub仓库就很好理解,镜像和仓库的关系就类似于用 git管理的项目GitHub仓库之间的关系。

每个仓库可以包含多个标签,每个标签对应一个镜像,我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值