什么是 Docker

这是引用一段维基百科的词条:

Docker 是一个开放源代码软件项目,让应用程序布署在软件容器下的工作可以自动化进行,借此在 Linux 操作系统上,提供一个额外的软件抽象层,以及操作系统层虚拟化的自动管理机制。

可以看出, Docker 是提供容器的技术软件。

怎么看待 Docker

轻应用,统一开发线上环境,降低运维成本。

以上是个人对 Docker 的简单看法,站在个人使用者的角度; 企业角度的话, 能做的事比较多,比如说容器云,但是目前并不是很成熟,相信跟云计算一样也是有一部分市场价值的。

个人就开发者及使用者角度谈谈怎么使用 Docker

了解 Docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。

这个感觉像是 java 的 jar 包一样,打好包就可以在任何有 jre 的地方运行;不同的是,Docker 提供了完全一整套的环境。

容器是完全使用沙箱机制,相互之间不会有任何接口(基本就像是一个虚拟机)。但不同于虚拟机的是,几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,Docker 不依赖于任何语言、框架包括系统。

Docker 的目标是实现轻量级的操作系统虚拟化解决方案。Docker 的基础是 Linux 容器(LXC)等技术。关于更详细的与虚拟机的区别和 LXC 到底是什么样的一种技术, 大家可以自行查阅官方的文档,这里推荐 coolshell.cn 的几篇 DOCKER 基础技术系列文章 , 感觉写的比较通俗易懂。

DOCKER 基础技术 http://coolshell.cn/articles/17010.html

具体使用

目前来讲, 笔者也只是使用 Docker 进行开发环境的统一,所以也没有什么特别具体方法积累,但还是列出一些入门走的路吧,公供参考:

  1. Docker 概念要理解清楚,搞懂与虚拟机的区别,这是比较重要的,毕竟你不能因为 Docker 很火就选了 Docker。
  2. 创建自己的容器。纸上得来终觉浅,动手做吧,docker.com 服务器在国外,梯子是必备的,不然拉一个镜像就 1 天了,另外一个选择就是国内提供容器服务的云,百度搜索一下应该都有提供免费使用 1 个容器或者是试用。
  3. Docker 私有仓库。这个不解释了,企业内部服务器弄一个,全部人就可以使用你的镜像了。

参考资源

开源的书籍:Docker—从入门到实践

https://www.gitbook.com/book/yeasy/docker_practice/details

打赏不准超过你工资的一半!!!