Docker启程

什么是docker

docker是一种类似于虚拟机,但较虚拟机更为轻量,不回去模拟低层硬件,只会为每一个应用提供完全隔离的运行环境,,可以在环境中配置不同的工具软件,不同环境之间相互不影响。这个环境,在docker中也被称为容器(container)。

Image(镜像)

课理解为一个虚拟机的快照,里面包含要部署的应用程序以及它所关联的所有库、软件,通过镜像,我们可以创建许多个不同的Container

Dockerfile

Dockerfile就像是一个自动化脚本,它主要被用来创建镜像。

Container(容器)

这里的容器就像一台台运行起来的虚拟机,里面运行了应用程序,每个容器独立运行,相互不影响。

Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建

可以把容器理解为一个简易的linux系统

repository(仓库)

仓库就是存放镜像的地方,仓库分为共有仓库和私有仓库

Docker Hub(默认是国外的)

Docker为何而出现

环境配置麻烦,每一个机器都要部署环境,比较费时费力。之前自己在虚拟机上搭lnmp环境,搭了一整个下午全是问题,然后用docker的镜像就挺方便。

发布一个项目,项目能不能都带上环境打包。很多应用环境无法跨平台。

Docker给以上的问题提出了解决方案

Docker能干嘛

容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,也没有虚拟硬件,比较轻便

每个容器间互相隔离,每个容器内都有一个属于自己的文件系统,互不影响

应用更快速的交付和部署

传统:一堆帮助文档,安装程序

Docker:打包镜像发布测试,一键运行

更便捷的升级和扩缩容

使用Docker之后,部署应用就和搭积木一样

项目打包为一个镜像,扩展服务器

更简单的系统运维

在容器化后,开发、测试环境高度一致

更高效的计算资源利用

Docker 是内核级别的虚拟化,可以在一个物理机上可以运行很多的容器实例,服务器的性能可以被压榨到极致。

接下来就开始我们的docker学习之旅

Docker Docs: How to build, share, and run applications | Docker Documentation