docker学习一——docker简介

为什么使用docker

docker是一种虚拟化技术,跟传统的虚拟机相比有很大的优势,不用占用太大的内存消耗,充分利用宿主机内存,启动时间以倍数比例减少,以及在持续集成方面都会展现出很大的优势。

传统的虚拟机技术:需要首先进行硬件虚拟,再进行软件虚拟,这样会特别占用宿主机内存,这也是为什么一台电脑上装了虚拟机以后会很卡的原因。
传统的虚拟机技术
docker技术:只需要在宿主机上装一个docker服务,就可以在docker服务上安装各种容器,容器间互相隔离,利用宿主机的内核,不用再虚拟出一套硬件以及运行完整的操作系统等额外开销,就会节省很多内存。
在这里插入图片描述
docker和虚拟机的对比总结:
在这里插入图片描述

docker基本概念

docker一共包括三个概念:镜像、容器、仓库。也就是说这三个概念连起来就是整个docker的生命周期

镜像

docker镜像是一个特殊的操作系统,就是说除了提供容器运行所需要的库和资源以外基本上不提供别的数据,只是保证你的系统可以正常启动即可,后续就是根据个人需要重新构建。

docker的存储时分层的,所以docker镜像并不是由一个文件组成的,而是由一组文件系统组成的,或者说是由多层文件系统联合而成的。

在构建镜像的时候会一层一层构建,前一层是后一层的基础,每一层构建完就不会在发生改变,后一层上的任何改变只发生在自己的一层,比如,删除前一层文件的操作,实际不是真的删除前一层的文件,而是仅在当前层标记为该文件已删除,在最终容器运行的时候,虽然看不到这个文件,但是实际上该文件会一直跟随镜像。

容器

镜像和容器的关系就像是类和对象的关系。
容器得运行实质是进程,但是与真正得宿主机进程不太一样,他有自己的root系统,可以看作是一个小的Linux系统,容器内的进程是运行在一个隔离的环境中,所以说比在宿主机上运行更加安全。
镜像使用的是分层存储,容器也是一样,容器是在镜像的基础上添加的容器存储层,数据存在容器中是不安全的,一旦容器被删除,容器内的数据也会被删除,所以如果想实现数据的持久化,可以使用数据卷的技术,挂载到本地目录,即使容器被删除,数据还可以持久保存。
在这里插入图片描述
镜像运行起来以后就是在镜像的基础上添加的容器层

仓库

docker仓库就是集中存放镜像的地方。通常来说,一个仓库会包含同一个软件的不同版本的镜像,而标签就常用于对应软件的各个版本,我看通过<仓库名>:的形式来指定具体是这个软件的哪个版本的镜像,如果不给标签,将以latest作为默认标签,这在拉取镜像的时候表现明显。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值