Oct 01, 2019 综合

Docker 简介

        Docker 是一个开源的应用容器引擎,基于 Go 语言,并遵从Apache2.0协议开源。

        Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

        容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

        Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

一、哪些人适合学习Docker?

        运维工程师、后端开发人员、NAS爱好者及各种PHP、Java、Python程序员建议学习Docker。

 

二、学习Docker前,需要了解哪些知识?

        在学习Docker前,需要掌握 Linux 的常用命令。

 

三、Docker的应用场景有哪些?

        Web 应用的自动化打包和发布。

        自动化测试和持续集成、发布。

        在服务型环境中部署和调整数据库或其他的后台应用。

        从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。

 

四、Docker 的优点

  • 4.1、简化程序

           Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的 任务,在Docker容器的处理下,只需要数秒就能完成。

 

  • 4.2、避免选择恐惧症

            如果你有选择恐惧症,还是资深患者。那么你可以使用 Docker 打包你的纠结!比如 Docker 镜像;Docker 镜像中包含了运行环境和配置,所以 Docker 可以简化部署多种应用实例工作。比如 Web 应用、后台应用、数据库应用、大数据应用比如 Hadoop 集群、消息队列等等都可以打包成一个镜像部署。

 

  • 4.3、节省开支

            一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。

 

五、相关链接

        Docker 官网:http://www.docker.com/

        Github Docker 源码:https://github.com/docker/docker-ce