• 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集群等。适用于快速高效集群扩展。整个过程全自动,省去了运维成本。


              我们微小的像尘埃

                  漂浮在一片无奈

          

     

  • 相关阅读:
    DripRoad(点滴之路)
    如何写优雅的代码
    .Net 一直在改变
    Protobufnet的完美解决方案
    关于msgpack序列化后的消息包是否再压缩
    失眠
    创建一个比微软性能更好空间更少的GUID
    msgpack与protobuf的简单性能测试对比
    分布式游戏服务器的登陆流程
    对象池的实现与性能测试
  • 原文地址:https://www.cnblogs.com/misscai/p/10003618.html
Copyright © 2020-2023  润新知