五步轻松实施Docker容器技术

随着Docker在云计算市场中领先地位的日益稳固,容器技术也成为了一种主流技术。为了对用户的应用程序使用容器技术,可遵循以下五个步骤。

Docker容器技术已在云计算市场中风靡一时了,而众多主流供应商则面临着技术落后的窘境。那么,是什么让Docker容器技术变得如此受欢迎呢?对于刚入门的新手来说,容器技术可实现不同云计算之间应用程序的可移植性,以及提供了一个把应用程序拆分为分布式组件的方法。此外,用户还可以管理和扩展这些容器成为集群。

在企业用户准备把应用程序迁往容器之前,理解应用程序的迁移过程是非常重要的。这里将介绍把用户应用程序迁往Docker容器的五个基本步骤。

步骤1:分解

一般来说,应用程序都是复杂的,它们都有很多的组件。例如,大多数应用程序都需要数据库或中间件服务的支持以实现对数据的存储、检索和集成。所以,需要通过设计和部署把这些服务拆分成为它们自己的容器。如果一个应用程序能够被拆分成为越多的分布式组件,那么应用程序扩展的选择则越多。但是,分布式组件越多也意味着管理的复杂性越高。

步骤2:选择一个基础映像

当执行应用程序迁移时,应尽量避免推倒重来的做法。搜索Docker注册库找到一个基本的Docker映像并将其作为应用程序的基础来使用。

随着时间的推移,企业将会发现这些Docker注册库中基本映像的价值所在。请记住,Docker支持着一个Docker开发人员社区,所以项目的成功与否很大程度上取决于用户对于映像管理和改良的参与度。

步骤3:解决安全性和管理问题

安全性和管理应当是一个高优先级的考虑因素;企业用户不应再把它们当作应用程序迁移至容器的最后一步。反之,企业必须从一开始就做好安全性和管理的规划,把它们的功能纳入应用程序的开发过程中,并在应用程序运行过程中积极主动地关注这些方面。这就是企业应当花大功夫的地方。

基于容器的应用程序是分布式应用程序。企业应当更新较老的应用程序以支持联合身份管理方法,这将非常有利于确保分布式应用程序的安全性。为了做到这一点,应为每一个应用程序组件和数据提供一个唯一的标识符,这个标识符可允许企业在一个细粒度的级别上进行安全性管理。企业用户还应当增加一个日志记录的方法。

步骤4:增加代码

为了创建映像,企业用户需要使用一个Dockerfile来定义映像开发的必要步骤。一旦创建了映像,企业用户就应将其添加至Docer Hub。

步骤5:配置、测试、部署

应对在容器中运行的应用程序进行配置,以便于让应用程序知道可以在哪里连接外部资源或者应用程序集群中的其他容器。企业用户可以把这些配置部署在容器中或使用环境变量。

对基于容器的应用程序进行测试类似于对其他分布式应用程序的测试。企业可以对每个容器进行组件测试,并将容器集群作为一个整体进行测试。 确定应用程序应如何能够在负载增加的情况下进行扩展。如果用户正在使用一个集群管理器(例如Swarm),则可测试其性能。

最后,把容器部署到实际生产环境中。为了积极主动地关注基于容器的应用程序的运行状况,可考虑实施必要的监控和管理机制 。确保打开日志记录功能。

很多应用程序迁移至云计算都是采用容器技术的。虽然迁移有一点复杂,但是容器可以保护应用程序投资并赋予了它一个更长的使用寿命。

原文发布于微信公众号 - 云计算D1net(D1Net02)

原文发表时间:2015-06-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏社区的朋友们

开源助力腾讯云容器服务

腾讯很多业务早已经跑在容器平台上,所以说腾讯内部对容器这块也积累了很多经验和教训,这次分享的主题,就是当我们把容器服务放在云上的时候,我们碰到的一些问题,以及我...

39010
来自专栏邵靖的专栏

一个基于 Docker 的负载均衡实例

本文目地主要是给大家简单安利一下目前最火的容器产品 Docker 及其所涉及的相关技术,并通过一个实际例子演示一下容器技术的典型应用场景。

3.3K10
来自专栏古时的风筝

Docker:Ubuntu下的安装

Docker是什么 Docker 是 Docker.Inc 公司开源的一个基于 LXC技术之上构建的Container容器引擎, 源代码托 管在 GitHub ...

41750
来自专栏云计算D1net

Docker为何未在生产环境中取得广泛成功?

Docker的发展势头一天比一天强劲,它显然在试图解决实际的问题。然而,对如今许多的生产环境用户来说,没有出现优点压倒缺点的局面。在开发、测试和持续性集成等环境...

402100
来自专栏PPV课数据科学社区

【学习】性能基准测试:KVM大战Xen

在上周,我们对 KVM 和 Xen 近几年里在性能上的改进进行了一些有趣的探讨后,我打算自己做一些这方面的小研究。我能找到的最新的资料,是来自2013年 Ph...

41330

在任何地方部署Kubernetes

容器技术所提供的解耦能力,让应用程序及其依赖程序不用再和操作系统耦合在一起。和处理虚拟机镜像方式不同,容器技术并不会将操作系统同应用程序打包在一起,这给我们节约...

223100
来自专栏程序猿DD

Netflix 的上线工具 Spinnaker

Spinnaker 的介绍 ? Spinnaker 是 Netflix 开源出来的持续交付工具,目的是为研发团队提供灵活的持续交付流水线,并且支持部署到测试/生...

744140
来自专栏一名叫大蕉的程序员

我学啥你就学啥Kubernetes(0)No.119

好,现在开始跟大家一起学习 Kubernetes ,本系列文章不会有什么安排,起点就是,我学什么我就向你们分享什么,期望大家对这门目前比较主流的技术有一定的...

10330
来自专栏SDNLAB

SDN实战团分享(三):Docker网络使用体验

我今天和大家分享一下Docker的网络,主要是基于我的使用体验和对这里面的一些技术的理解,也顺便听取一下大家的建议。我是做培训的,大多数时候和理论的东西打交道,...

37560
来自专栏企鹅号快讯

Kubernetes的前世今生和未来

有人认为自动化,云计算和人工智能是第四次工业革命。如果你开始感受到IT领域自动化率的飙升,特别是在应用程序部署和管理领域(我觉得还不是无缝的自插拔式),那么不用...

27360

扫码关注云+社区

领取腾讯云代金券