今日课堂:架构师分享 Docker 新手入门!Docker 最初 dotCloud 公司内部的一个业余项目 Docker 基于 Go 语言 Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案 Docker 的基础是 Linux 容器(LXC)等技术 Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多 Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器
下面的图片比较了 Docker 和传统虚拟化方式的不同之处,可见容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。 容器除了运行其中应用外,基本不消耗额外的系统资源,使得应用的性能很高,同时系统的开销尽量小。传统虚拟机方式运行 10 个不同的应用就要起 10 个虚拟机,而Docker 只需要启动 10 个隔离的应用即可。 主要优势为: 更快速的交付和部署 - 容器成为了最小单位 更高效的虚拟化 - 内核级虚拟化 更轻松的迁移和拓展 更简单的管理 官方网站提供了 Mac, Linux 和 Windows 版本的安装教程。我们只要跟着官方文档即可,这里不再赘述。
不过需要提一下 Kitematic 这个图形化工具(官方给出的定义是 Visual Docker Container Management on Mac & Windows),对于熟悉和了解 Docker 是很好的帮助,大家可以体验一下。
守护进程 运行 Docker 守护进程时,可以用 -H 来改变绑定接口的方式,比如 sudo /usr/bin/docker -d -H tcp://0.0.0.0:2375, 如果不想每次都输入这么长的命令,需要加入以下环境变量 export DOCKER_HOST="tcp://0.0.0.0:2375" 图形用户界面 虽然我们可以用命令来控制 docker,但是如果能有一个 web 管理界面,操作什么的会方便很多,比较常见的有
|