docker 与 services 入门
【摘要】容器是当前面向服务软件的最佳实践之一,了解容器技术及其发展是程序员必修功课。本文简单介绍容器技术的发展与服务的关系,并配了学习容器服务技术的系列入门教程。
docker 与 services 入门
【摘要】容器是当前面向服务软件的最佳实践之一,了解容器技术及其发展是程序员必修功课。本文简单介绍容器技术的发展与服务的关系,并配了学习容器服务技术的系列入门教程。
2013.03 - 2016.~ 在短短3年多时间内,Docker 从一个称为容器化的深奥且神秘的 Linux 内核技术,变成简单且人人会用的技术。docker 早年的关键词是容器(container)、工作进程(work-processing)、容器级虚拟化等等,目标是软件快速交付与测试。快速理解Docker - 容器级虚拟化解决方案描述的非常好。从 docker V1.12 开始1,官网出现最多的关键词开始转为服务(Services),它主推 docker swarm 技术,这不仅直接与 Google K8s(Kubernetes) 等主打容器即服务(CaaS)企业市场的厂家产生冲突,而且具有原生的竞争优势。如果你关注这种冲突对未来的影响,建议阅读(容器,你还能只用Docker吗?)。docker 从容器技术公司进入软件服务市场,从某种程度上顺应了对软件开发、交付、运维模式,特别是未来云服务软件提供模式的变革。
本文关注的话题是为什么必须了解容器技术?docker/container service(容器服务)事实上几乎是 SaaS(软件即服务) 的代名词。遥想是几年前,IBM 加持 SOA 概念,统领了几乎全球电子商务软件市场。随着互联网发展,SOA 理念依旧,却少见 IBM 的产品。人们不断探求 service oriented 的最佳技术,从目前看,container service 是实践 SOA 理念最佳技术土壤之一。特别是微服务架构(MicroService Architecture)的发展,软件开发、交付、运维方式已产生了本质的变化,容器改变了编程思考(如下图)。
docker 官网列举了许多产品特性:
- 敏捷
- 可控
- 可移植
- … …
对于程序员,除了代码,任何词汇都是空洞的。因此,我们以 CentOS 7 为平台,按程序员实战需要,做了 6 个入门教程帮助程序员理解使用容器技术的简单性,以及容器与服务的关系,构建自己的容器服务。它们是:
- centos 7 安装 Docker
- 使用 mysql docker 镜像
- 一张图读懂 docker 命令
- 快速发布 docker 应用之神器 - docker Maven
- docker 集群(swarm)部署 web 应用入门(Nginx)
- 创建镜像 - 创建与定制 mysql 镜像
这些简短的案例,忽略了很多重要内容,包括:
- 容器的原理与格式
- 容器中的网络
- 进程通讯 - 环境变量与管道
- 卷的管理
- 构建本地镜像仓库
- … …
既然目标是迅速入门,也没必要大而全。这些对于单机应用开发应该是足够的。
【完】
- Docker 1.12: Now with Built-in Orchestration! https://blog.docker.com/2016/06/docker-1-12-built-in-orchestration/ ↩
更多推荐
所有评论(0)