zl程序教程

您现在的位置是:首页 >  工具

当前栏目

《Docker生产环境实践指南》——1.3 使用Docker的多种方式

Docker 环境 指南 方式 实践 生产 1.3 多种
2023-09-11 14:17:34 时间
过去的几年时间,科技发生了巨大变化,从物理服务器到虚拟服务器,再到拥有PaaS环境的云计算。不论是否采用了全新架构,Docker镜像都可以在当前环境中很容易地被使用。要使用Docker,并不需要立即从单体应用程序迁移到面向服务架构。有很多用例允许在不同层次上集成Docker。

本节书摘来自异步社区《Docker生产环境实践指南》一书中的第1章,第1.3节,作者: 【美】Joe Johnston(乔•约翰斯顿)著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.3 使用Docker的多种方式

过去的几年时间,科技发生了巨大变化,从物理服务器到虚拟服务器,再到拥有PaaS环境的云计算。不论是否采用了全新架构,Docker镜像都可以在当前环境中很容易地被使用。要使用Docker,并不需要立即从单体应用程序迁移到面向服务架构。有很多用例允许在不同层次上集成Docker。

Docker常用于以下场景。

使用以镜像为基础的部署方式取代类似Capistrano的代码部署系统。
安全地在同一台服务器中运行遗留应用和新应用。
使用一个工具链循序渐进地迁移到面向服务架构。
管理云端或裸机上的水平扩展性和弹性。
确保从开发环境到预演环境到生产环境跨环境的一致性。
简化开发人员的机器设置和一致性。
将应用的后台程序迁移到Docker集群中,同时保持网页服务器和数据库服务器不变是开始使用Docker的常见示例。另一示例是将应用的部分REST API迁移到Docker中运行,前端使用Nginx代理在遗留服务和Docker集群之间路由通信。通过使用此类技术,团队可以渐进式地从单体应用无缝地迁移到面向服务架构。

如今的应用程序往往需要几十个第三方库,用于加速功能开发或连接第三方SaaS和数据库服务。每个库都可能产生bug,或是让用户陷入版本依赖的泥沼。再加上库的频繁更改,要在基础设施上完成工作代码的持续部署而不引起失败,压力巨大。

Docker可贵的镜像思想使得技术团队在部署工作代码时,不论是单体架构、面向服务或是二者的混合,由于代码及其依赖项捆绑在同一个镜像中,所使用的方式对每次部署都是可测试、可重复、文档化且一致的。一旦一个镜像构建完毕,就可以部署到任意多个运行着Docker守护进程的服务器上。

另外一个常见的Docker用例是跨环境部署一个单一容器,其典型的代码路径是从开发环境到预演环境再到生产环境。容器为整个代码路径提供了一个一致的、可测试的环境。

作为一个开发人员,Docker模型允许在其个人电脑上调试与生产环境完全一致的代码。开发人员可以很容易地下载、运行和调试有问题的生产环境镜像,且无需事先对本地开发环境进行修改。


编者按:这是一篇翻译,原文详见:https://docs.docker.com/compose/production/ 译文原文:http://www.itmuch.com/docker/27-docker-compose-in-production/,转载请说明出处。
为生产环境准备Docker容器的有关课程 本文讲的是为生产环境准备Docker容器的有关课程【编者的话】本文为独立顾问James Higginbotham于DZone网站中发布的文章Lessons in Preparing Docker Containers for Production,此文描述了在使用Docker进行生产时需要记住的一些关键点,包括自动化,数据库决策以及编排等方面的重要性。
内置编排工具且适用于生产环境的Docker 1.12 GA了! 本文讲的是内置编排工具且适用于生产环境的Docker 1.12 GA了!【编者的话】对于Docker来说,内置适用于生产环境的编排工具是件大事情。本文介绍了该内嵌编排工具的拓扑机构以及管理节点与工作节点之间通信的协议,并对该版本的内容进行总结,分别为容错、规模与性能、安全。
生产环境中Docker的持久化存储模式 本文讲的是生产环境中Docker的持久化存储模式【编者的话】在生产环境中使用Docker实现持久化存储一直是业界的热点问题,本文从到配置文件、机密材料、数据库、共享数据等方面做了些探讨,文中也谈到了一些需要避免的问题以及尽量将应用设计为无状态服务的原则。
生产环境中使用Docker Swarm的一些建议 本文讲的是生产环境中使用Docker Swarm的一些建议【编者的话】实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行。然而,面对Kubernetes,Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它们之中,Swarm是Docker原生的,同时也是最简单,最易学,最节省资源的,至少值得我们多了解一下。
三个生产环境中使用Docker的案例 本文讲的是三个生产环境中使用Docker的案例【编者的话】本文为2017年初Docker线下见面会的记录,Solita、Zalando和Pipedrive公司做了Docker化经验分享,并对生产环境中使用Docker的细节进行讨论。本文还推荐了一些Docker生产环境中常使用的优秀工具。
生产环境运行Docker的9个关键决策 本文讲的是生产环境运行Docker的9个关键决策,【编者的话】生产环境运行Docker并没有想象的那么简单,如何实现稳定安全的部署和扩容? 又有哪些需要考虑的关键决策? 本文就此做了一些分析和阐述,赶紧来看看吧!
在生产环境中使用Docker必须注意的事情 本文讲的是在生产环境中使用Docker必须注意的事情,【编者的话】本文以最近非常火的希特勒怒喷Docker的视频为线索,详细分析了Docker存在的一些问题和弱点,以及在生产环境中使用Docker所要注意的方面。
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。