Docker是什么呢?

        上回书说到物理机、虚拟机、容器之间的优缺点,其中容器里面有提到Docker,但Docker到底是什么呢?以下是我自己的理解;

一、Docker是什么呢?

        为了了解到Docker是什么,我查询了大量资料,用专业的术语可以概述为:

        Docker 是一个开源的容器管理引擎,由dotCloud(后改为Docker)公司创造,最开始是基于LXC,将LXC复杂的容器创建与使用简化为Docker的命令体系,之后又反向定义容器的实现标准,将底层实现都抽象化到Libcontainer接口,从此容器的实现方式变成了一种可变的方案;

        Docker是使用沙箱机制,相互之间不会有任何接口,也几乎没有性能开销。不依赖于任何语言、框架、系统,可以让开发者将他们的应用以及依赖包打包到一个可移植的镜像中,以便于批量的部署在任何安装Docker引擎的服务器上;   

         总而言之,Docker就像是一个一个的集装箱,操作系统就相当于运输集装箱的货轮,集装箱中装着要交付的APP和运行环境,要迁移环境了,我只需要将集装箱搬过去就行了,这样搬运工的工作少了,开发、测试和生产环境也统一了。

二、Docker优点

        Docker能得到广泛应用肯定具备一定的优点:

        1、Docker定义了一种统一标准的打包格式,它隔离了APP与操作系统之间的直接联系,可批量移植到其他服务器上,简化了软件集成与交付的工作,实现了开发、测试、生产环境的统一;

        2、Docker轻量以及灵活,可以在同一台服务器上部署多个容器;

        3、Docker运行时性能高,启动、停止、重启等操作都是以秒或者毫秒为单位;

三、Docker技术架构

        Docker采用C/S架构,一个完整的Docker由以下几个部分组成:

        1、Docker Clients:Docker客户端。通过命令行或其他工具发送操作指令给Docker守护进程;

        2、Docker daemon:Docker守护进程。作为服务端接受客户端的命令,管理镜像、容器、容器网络、数据卷等;

        3、Docker Images:Docker镜像,用于创建Docker容器的模板,主要通过Dockerfile 文件定义;

        4、Docker Containers:Docker容器,是镜像运行的实例;

        5、Docker Registries:Docker仓库,用于存储镜像和管理镜像的版本

        5、Docke Hosts:一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

        6、Docker Machine:Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker;

四、Docker适用的场景
  •  自动化测试、持续集成、交付、部署(CI/CD);
  •  应用自动化打包、发布;
  •  开发、测试和生产环境统一;

        我是chililopp,正在学习k8s,之后如果有新的总结或者体验也会发出来,如果有说的不对的地方,还请指点,十分感谢阅读!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值