1、更高效的利用系统资源
由于该容器不需要硬件虚拟化和运行完整操作系统之类的额外费用,因此Docker具有更高的系统资源利用率。
无论是应用程序执行速度,内存消耗还是文件存储速度,它都比传统虚拟机技术更高效。因此,与虚拟机技术相比,具有相同配置的主机通常可以运行大量应用程序。
2、更快速的启动时间
传统的虚拟机技术通常需要几分钟才能启动应用程序服务。但是,Docker容器应用程序直接在主机内核上运行,不需要启动完整的操作系统,因此它们可以实现几秒钟甚至几毫秒的启动时间。大大节省了开发,测试和部署的时间。
3、一致的运行环境
开发过程中的常见问题是环境一致性。由于开发环境,测试环境和生产环境的不一致,因此在开发过程中未发现一些错误。
Docker的镜像提供了除内核以外的完整的运行时环境,从而确保了应用程序运行时环境的一致性,因此不会出现诸如“此代码在我的机器上还可以”这样的问题。
4、持续交付和部署
对于开发和运维(DevOps)人员,最希望的是一次创建或配置它并在任何地方运行。
使用Docker,可以通过自定义应用程序映像来实现持续集成,持续交付和部署。开发人员可以使用Dockerfile来构建映像,并集成持续集成(ContinuousIntegration)系统以进行集成测试,而运维人员可以直接在生产环境中快速部署映像,甚至可以将其与ContinuousDelivery/Deployment相结合。系统执行自动部署。
而且使用Dockerfile使镜像构建透明化,不仅仅开发团队可以理解应用运行环境,也方便运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像。
5、更轻松的迁移
由于Docker确保了执行环境的一致性,使得应用的迁移更加容易。Docker可以在很多平台上运行,无论是物理机、虚拟机、公有云、私有云,甚至是笔记本,其运行结果是一致的。
因此用户可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。
更多鲁班学院java高级培训免费课程试听地址:https://www.lubanjava.com/course.html
鲁班学院java高级培训课程:https://www.lubanjava.com/course/detail/519.html
加群即可领取鲁班学院最新Java高级培训课程资料学习包 群号:700541970
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!