美文网首页
Docker容器化技术

Docker容器化技术

作者: ssttIsme | 来源:发表于2019-04-28 16:32 被阅读0次

    1 Docker容器技术

    根据镜像创建多个容器,每个容器是独立的操作系统,能设置ip地址,是个轻量的虚拟机。
    Docker使用go语言开发,go是高并发最快的高级语言。
    使用Docker能完全替代VM虚拟化技术。

    1.1 需求场景

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

    1.2 Docker与虚拟机对比

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

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

    Docker:部分共享部分隔离,共享cpu,内存,磁盘甚至操作系统,极为轻量。瞬间启动,达到秒级,共享资源,能启动更多实例,一个docker容器能启动50到200个进程。

    1.3 Docker五大要素

    1. 沙箱:隔离,将应用之间的必要资源隔离开,防止互相影响,应用之间互相独立。
    1. 镜像Image(只读):把技术(如redis、rabbitmq)包装起来,使之具有docker特性(随时启动,关闭)。镜像可以拆分,传输使用dockerfile。
    1. 容器Container(可写):容器是从镜像创建的运行实例。容器包含某个镜像,容器可写,容器关闭后临时数据被释放掉(删掉)。这种设计让docker占用的磁盘资源更少。
    1. 数据卷Volume(补丁):做一个数据目录挂载到容器上,把持久的数据写入到这个目录中。比如容器中数据库的数据,但是不建议使用,因为重启容器需要挂载同步数据,效率低。解决方式:一般有永久的数据就不建议使用容器化技术。
    1. 仓库Repository:与maven仓库概念一致,也有远程仓库的思想(可以从远程仓库下镜像)和私服的思想(在本地做镜像仓库,如阿里云,可以自己封装镜像)。镜像都会保存在仓库中,创建容器是根据镜像的规定进行拉取,可以共享。

    1.4 Docker的版本及要求

    Docker分为docker-ce(社区版-开源)和docker-ee(企业级-收费)

    Docker必须运行在Linux kernel 3.8及以上版本,一般安装在Centos7或者Ubantu系统上。
    使用uname -a检查当前linux内核版本。
    必须3.10以上版本,linux内核才能支持容器化的技术。

    相关文章

      网友评论

          本文标题:Docker容器化技术

          本文链接:https://www.haomeiwen.com/subject/hohjnqtx.html