Docker 教程

什么是Docker ?

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中, 然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

Docker 解决了环境配置的难题

在以前我们代码开发好了,就得做测试环境、beta环境、生产环境的部署,当我们部署好了环境之后, 就在各自的环境跑了,但是安装三个环境,而且操作都是一样的,因此这个时间运维工程师就把这些操作 写在了一个脚本里(例如shell),日后如果有其它环境直接执行脚本就可以了。

可是我们环境变了,开发部门又增加了外部第三方服务(例如redis, zookeeper), 这个时候得改脚本了, 然后在测试环境、beta环境、生产环境,执行一遍!

那么问题来了,如果业务部门业务越来越大,客户越来越多,那么安装的环境就要更多了,还有新服务,新系统可能不 兼容旧的代码; 很显然之前的部署会很重,如果安装出错,特别是在线上,那将是一场灾难!

环境配置如此麻烦,换一台机器,就要重来一次,非常费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。

Docker 就是带着这样的使命诞生了! 这是所有做运维的福音!

Docker用途

  • 提供一次性的环境。一次制作环境,到处运行!并且环境都是一样的!

  • 提供弹性的云服务。 Docker 容器可部署多个, 方便动态扩容和缩容。

  • 组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构。