Docker容器技术

(一) 需求场景

  现在某公司需要增加5000台服务器,该怎么办,一台一台的装?

  装一个操作系统需要20分钟,而且手动装出的环境不一样.非常不好,而且效率低.

(二) Docker的引入

  1 - Docker的作用

       Docker提供轻量的虚拟化,通过docker镜像能创建出多个容器,一个容器相当于一个虚拟机.可以把镜像快速的部署到无数台服务器上.

  2 - Docker与虚拟机对比

    每个虚拟机需要安装一个操作系统

    (1) 虚拟机:资源全部隔离,CPU,内存,磁盘相互独立,一台宿主机中可以安装的虚拟机数量是一定的,有限的,移植性不强(文件很大,拷贝传输困难).

    (2)Docker:部分资源部分隔离,共享CPU,内存,磁盘甚至操作系统,极为轻量.

    

 

  3 - Docker的五大要素

    (1)沙箱:隔离,将应用之间的必要资源隔离开,防止互相影响,应用之间相互独立.

    (2)镜像:模板,centos+tomcat+mysql+redis,镜像可拆分,传输用dockerfile

    (3)容器:镜像的实例,镜像只读,容器可写,容器中可以保存应用产生的临时文件

    (4)数据卷:挂载到容器上,用于保存必要数据.比如容器中数据库的数据,但是不建议用,因为重启容器需要挂载同步数据,效率慢.解决方式:数据库拆分

    (5)仓库:与maven仓库概念一致,应用都会保存在仓库中,创建容器是根据镜像的规定进行拉取,可以共享.

  4 - Docker的版本及要求

    Docker基于linux3.8及以上版本内核开发,所以在使用docker前需要确认linux内核版本,一般在centos7以上.

    查看linux版本命令: uname -a 

  

(三) Docker -- Redis案例

    创建redis容器 linux 命令:   docker run -d --name redis7000 -p 7000:6379 redis:3.2.8

    参数说明: 

      (1) -d 则容器(containter) 将会运行在后台模式

      (2) -name 实例名称

      (3) -p 对外程序访问端口7000,宿主机映射的redis端口6379

      (4) 最后的redis3.2.7 为镜像名称

  

(四) 部署项目 -- 服务器结构图 

   windows浏览器中访问 http://虚拟机IP:8080 ,能看到tomcat首页

  

 

(五)Docker总结与扩展

  Docker容器一般用于部署重复相同的服务,如:redis集群,tomcat集群等。适用于快速高效集群扩展。整个过程全自动,省去了运维成本。

 


 

 

          我们微小的像尘埃

              漂浮在一片无奈

      

 

 

posted @ 2018-11-22 20:13  朝才  阅读(212)  评论(0)    收藏  举报