不知不觉,已经陪伴你走过了 25 课时,首先,恭喜你坚持学完了本专栏的全部内容。
在这个专栏,我带你从 Docker 的基础知识开始学习,到 Docker 的原理讲解,再到 Docker 的编排,最后将 Docker 技术融合到了 DevOps 中,相信此时的你已经对 Docker 有了全新的认识。
显而易见,引入容器可以帮助我们提升企业生产效率、降低成本,并且使用容器还可以帮助我们更加快速地分发和部署应用。当前,越来越多的企业开始使用容器来部署核心业务,全球市场上容器化的需求在逐年增加,451research 表明,预计到 2022 年,容器整体市场将达到 43 亿美元。这一巨大的数字说明未来市场对容器方面的人才需求也会越来越多,因此,容器的市场未来一定是越来越大的,未来会有越来越多的企业和个人加入容器技术的浪潮中,使用容器帮助我们解决更多实质性的问题。
在我看来,容器技术未来的发展主要表现在以下几点。
容器业务会转向主流
在容器技术早期,由于容器技术本身的稳定性和可用性不是很理想,容器的编排技术相对也不够成熟。因此很多企业在做容器化改造的过程一直都是小心翼翼,业务容器化改造的程度也不够理想。
但随着容器技术的逐渐成熟和稳定,越来越多的企业开始将业务迁移到容器中来(例如我们经常访问的 GitHub 的核心服务已经全部运行在了容器中),虽然目前有些公司还没有使用容器来部署业务,但是已经有很多公司在尝试和探索使用容器来改变现有的业务部署模式。在未来,容器业务一定会占据越来越多的份额。
混合云和多云将成为趋势
随着业务原来越复杂,业务规模越来越大,越来越多的企业面临着从一个简单的私有云或公有云环境到跨多种形态的复杂环境。我们业务可以一部分部署在自建的机房中,另外一部分则部署在共有云上,甚至我们的公有云供应商还会有多家。而容器和 Kubernetes 使得管理这种复杂的云环境成为现实,使用容器和 Kubernetes 技术将公有云和私有的资源统一封装,实现将我们的业务无差别的运行在任何环境中。
整合平台和工具
从容器技术的诞生,到后来容器编排大战,最后 Kubernetes 赢得了容器编排的胜利,Kubernetes 在容器编排领域的使用率远远超过其他编排工具,Kubernetes 目前不仅仅是一个编排工具,更是容器编排领域的标准,Kubernetes 提供了一个合理且清晰的思路来帮助我们减少对特定云的依赖。
更加注重容器安全
随着容器技术的逐渐成熟,容器的稳定性已经得以解决,越来越多的业务开始容器化,然而容器的安全问题也开始逐步的暴露出来。由于容器的隔离仅仅依靠 Namespace 和 cgroups 实现了内核级别的隔离,其隔离性与虚拟机相比还有较大差距,并且可能涉及镜像安全、内核安全、运行时安全和网络安全等各个层面的安全问题。因此,我们使用容器部署业务时,应该充分评估安全风险,根据使用场景来制定相应的安全策略。
开源共赢
当前全球化已经是一个大趋势,而在软件领域合作共享才可以帮助我们快速实现更多的技术价值,我们将优秀的项目放在开源平台让全世界人们一起使用和贡献,不仅可以使我们的软件更加成熟,也可以避免重复造轮子造成资源浪费。除此之外,开源软件还有代码透明、平台中立、快速获取反馈等诸多优点。Docker 和 Kubernetes 能够如此成功,这与它们的开源运作方式是分不开的。
写在最后
转眼间,我从事容器技术已经近 6 年,在这几年中,容器领域发生了翻天覆地的变化,Docker 从最初的一个小公司发展为容器的代名词,Kubernetes 也在容器编排领域取得了阶段性的胜利。在这期间,我帮助过多家公司从 0 到 1 建立了容器云平台,其中不仅有私有云,更有公有云服务,这个专栏也是对我从事容器多年来实战经验的一个总结,希望这个专栏真正的帮助到了你,真正能够让你学习到对职业生涯有用的知识和经验。
最后说一下我对未来容器应用场景的认识,我认为除了云计算外,边缘计算也会有很大的市场和发展前景。因为边缘计算不仅可以带来更大的带宽,还可以带来更低的延迟,目前各大云厂商都已经在布局边缘计算了(阿里云、腾讯云、AWS 等)。相信 5G 的到来,会进一步推动边缘计算的落地,而容器由于其轻量的特性,在边缘计算领域会发挥更大的作用。我在 2019 年初就已经开始使用容器技术构建边缘计算平台了,如果你也看好边缘计算,欢迎和我一起探讨。
如果你对于容器技术还有什么疑问,欢迎在评论区留言提问,我会继续关注你!我也会在拉勾教育继续帮助每一个想要学习容器技术的人,希望每个人都能学有所成,学有所用。
最后,我邀请你为本专栏课程进行结课评价,因为你的每一个观点都是我和拉勾教育最关注的点。点击链接,既可参与课程评价,编辑会随机抽 5 位同学送精美礼品喔。
我是郭少,后会有期。
精选评论
**辉:
k8s1.8以后不再支持docker了,老师怎么看待这个问题呢?
讲师回复:
只是更换了 CRI 接口,底层运行时还是 runc,容器实现的原理都一样。 docker 功能确实太臃肿了,个人开发还是非常适合用 docker 的。
**飞:
看了不少docker学习视频,郭老师的课是最具体最深入的。
**天:
撒花,老师讲得很棒!
**童:
从不评论, 看完了,还是留个言, 确实牛, linux知识如数家珍.
编辑回复:
感谢
*喜:
专栏真的很不错👍👍 学习完很有帮助
**用户9307:
学完的第一门课,还不错。
**生:
下一门课程希望讲k8s。
**来:
是我入门docker的基础”镜像”,谢谢老师
**远:
关于性能有个疑问:环境:OS:centos7 /kernel:5.9.11测试vm部署nginx1.18.0,使用wrk -c 1000 -t 2 压测Requests/sec: 29439.48。同样的nginx版本容器化然后使用相同的nginx配置,压测Requests/sec: 18439.48。 性能相差很大,从哪方面着手去分析呢?
讲师回复:
建议通过网络联通方式进行入手分析。
Robot:
学习完了,打卡
编辑回复:
棒喔!
**3756:
老师目前华为和阿里 分别开源了kubeedge和OpenYurt 这两个平台的特点是啥呢
讲师回复:
OpenYurt同KubeEdge都是星型拓扑结构,在边缘去中心化,一个边缘数据中心的所有边缘节点都是同等级的peer node,同云中心的kubelet节点一致,均强受制于云上master节点,只是在地理区位上距离master节点有远近之分。
**里的火:
有个问题,docker中crontab定时不执行,改怎么处理啊?
讲师回复:
注意一下容器的时区是否正确,如果不正确请先调整时区。docker 中的 crontab 和 主机上用法是一样的。
**生:
学习完,打卡,学习到了很多,对docker更加深刻了
编辑回复:
恭喜同学,棒棒!!
**8621:
看完了一遍,再看一遍自己输出点总结
编辑回复:
太棒了!!!
**7547:
谢谢老师。通过此课程我对docker、k8s有了基础的概念了解,后续深入学习更加方便了
**伟:
学完打卡~
编辑回复:
棒棒!!!!
**卫:
老师讲的很好,这是我学到的第一个课程能对docker有这么清楚的认识和了解的。k8s的课程老师会出吗?
编辑回复:
现阶段拉勾教育平台已有一门K8s课喔,您可以看看。
**威:
好像读完了一本书,撒花~
编辑回复:
恭喜您!!
*杰:
fitting
**鑫:
考试,最近项目组,准备搭建公有云环境,对公有云不太了解,跟私有区别在哪?
讲师回复:
公有云和私有云的主要区别在于安全和隔离性。私有云只需要有限的隔离和安全即可,而公有云需要考虑多租之间的绝对隔离,以及资源相互不受影响
**巍:
老师讲的太好了,期待老师的其它课程
编辑回复:
谢谢啦,你也好棒棒!
**轩:
赞!
编辑回复:
fitting