喜欢就 关注 我们吧!
简介:
Hello 各位 ,我是公号「八点半技术站」的创作者 - Bruce.D (姓氏:豆)。
感谢微信给予的个人认证,专注于PHP、数据库技术领域知识经验分享。
技术的交流、不仅仅限制于阅读,在此欢迎各路大神、小白,来「wx技术群」分享自己的编程经验心得 与 技术实c货。
新手必备(灵魂)问题
Q:为什么要使用docker?
Q:docker 由什么组成?
Q:docker 有哪些优势与劣势?
以上三个问题,下述内容会围绕这三个话题展开讲解~~~
NO.1 - 为什么要使用 docker ?
我们为什么要使用 docker ? 作为一种新的虚拟化方式 . docker 跟传统的虚拟化比较来看,具备很大的优势。
主要为了几个方面:
(1)更高效利用系统资源;
(2)更快速启动时间;
(3)一致化的运行环境;
(4)更轻松的迁移;
(5)更轻松的维护和扩展。
NO.2 - docker 由什么组成 ?
学习容器docker,完整的 docker 有以下几个部分组成:
DockerClient(客户端)
Docker Daemon(守护进程)
Docker Image(镜像)
DockerContainer(容器)
其实理解了这几个概念,也就理解了 Docker 的整个生命周期。
NO.3 - docker 有哪些优势与劣势 ?
聊聊 docker 优劣势,其实上面(为什么使用docker?)已经算是讲了一些优势。这里我会拆分开具体讲解一下。
优势:
(1)简化配置
虚拟机的最大好处是能在你的硬件设施上运行各种不一样配置的环境。它能让我们将运行环境 和 配置 放在代码汇总后部署。同一个 docker 的配置可以在不同环境使用,这样直接降低了硬件要求和应用环境之间的耦合度。
(2)代码流水线管理
代码从开发者的机器到最终生产环境上部署,需要经过很多,并且会有一些微小差别。而docker 给应用提供了一个从开发环境到线上一致的环境,让代码流水线变得更加简单。
(3)隔离应用
开发时会在一台机器上运行不同的应用。一种是:为了降低成本,进行服务器整合。一种是:将一个整体的应用拆分成低耦合的单个服务。
(4)快速部署
docker为进程创建了一个容器,不需要启动一个操作系统,时间缩短为秒级别。可以在数据中心创建销毁资源而不需要担心重启带来的开销。
(5)调试能力
docker提供了一些工具,工具不一定只是针对容器,但是却用于容器。他们提供了很多功能(容器设置检查点、设置版本、查看容器之间区别),通过这些可以调试bug。
劣势:
(1)运行环境限制,必须是在64位的机器上运行,并且目前仅支持x86_64 和 AMD64,32位暂时不支持。
(2)系统的Linux 内核必须是3.8 或者更新的,内核仅支持Device、Mapper、AUFS、VFS、btrfs 等存储格式。
(3)内核必须支持 cgroups 和命名空间。
往下拉,有干货
和我再战 n+1 天
同时,为了方便大家学习,我会把一些源码、技术干货存储到 github 中,随时可以在微信群 进行交流,扫下面二维码 ,备注 “技术进群” 就可以通过审核。
进群的小伙伴请加右侧私人微信(备注:技术进群)
----投稿分隔线----
投稿,关注公众号回复“投稿”,专员对接
-----商务合作分隔线----
商务合作,关注公众号回复“商务合作”,专员对接