docker官网信息
docker官网:https://www.docker.com/
docker文档:https://docs.docker.com/
docker镜像:https://hub.docker.com/
docker版本
docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)。
什么是docker
当人们说“Docker”时,他们通常是指 Docker Engine,它是一个客户端 - 服务器应用程序,由 Docker守护进程、一个REST API指定与守护进程交互的接口、和一个命令行接口(CLI)与守护进程通信(通过封装REST API)。Docker Engine 从 CLI 中接受docker 命令,例如 docker run 、docker ps 来列出正在运行的容器、docker images 来列出镜像,等等。
docker是一个软件,可以运行在window、linux、mac等各种操作系统上。
docker 是一个开源的应用容器引擎,基于Go 语言开发并遵从 Apache2.0 协议开源,项目代码托管在github上进行维护
docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上。
容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。
docker基本组成
docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);
docker仓库(Registry):用来保存各种打包好的软件镜像;仓库分为公有仓库和私有仓库。(很类似maven)
docker镜像(Images):软件打包好的镜像;放在docker仓库中;
docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用。
阿里云安装docker
CentOS/Ubuntu:https://developer.aliyun.com/article/110806
Mac:直接homeberw安装【配置一下国内源,建议清华源,其它的都已经没有了包】
docker与操作系统比较
docker是一种轻量级的虚拟化方式。与传统操作系统技术的特性比较如下表:
特 性 | 容 器 | 虚 拟 机 |
---|---|---|
启动速度 | 秒级 | 分钟级 |
性能 | 接近原生 | 较弱 |
内存代价 | 很小 | 较多 |
硬盘使用 | 一般为MB | 一般为GB |
运行密度 | 单机支持上千个容器 | 一般几十个 |
隔离性 | 安全隔离 完全隔离 | 完全隔离 |
迁移性 | 优秀 | 一般 |
传统的虚拟机方式提供的是相对封闭的隔离。Docker利用Linux系统上的多种防护技术实现了严格的隔离可靠性,并且可以整合众多安全工具。从 1.3.0版本开始,docker重点改善了容器的安全控制和镜像的安全机制, 极大提高了使用docker的安全性。