Docker —— 什么是Doker
Posted Johnny*
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker —— 什么是Doker相关的知识,希望对你有一定的参考价值。
以前的模式,打包war包,可能会发生:环境变量、环境配置、软件版本与运维不一致的可能。
因此docker的诞生就是为 了解决这一难题。开发人员利用 docker可以消除协作编码时“在我的机器上可以正常工作,在运维却失败的问题”。
Docker镜像的设计,使得Docker得以 打破过去【程序即应用】的观念。透过镜像(images)将作业系统核心除外,运作应用程序所需的系统环境,由上而下打包,达到应用程式跨平台间的无缝接轨运作。
Docker理念
Build ,Ship and Run Any App, Anywher。
一次构建到处运行。
Docker是在Linux容器技术的基础之上发展过来 的。将应用运行在Docker容器上,而Docker容器在任何操作系统都是一样的,这就实现了跨平台、跨服务器。只要一次 配置好环境,换到别的机子上就可以一键部署号,大大简化了操作。
虚拟机技术
虚拟机就是带 环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统。比如在Windows系统里面运行Linux。应用程序对此毫无感知,因为虚拟机看上去跟真实的操作系统一模一样。而对于底层操作系统而言,虚拟机就是一个普通文件。
缺点:
- 资源占用多
- 步骤冗余
- 启动慢
容器虚拟化技术
Linux容器不是模拟一个完整的操作 系统,而是对进程进行 隔离。有了 容器 ,就可以将软件运行所需的所有资源打包到一个隔离的容器 。容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工作所需的库资源和设置。系统因此而变得高效轻量并保证部署在任何 环境中的软件都能始终如一地运行。
前提
基本组成
镜像(image)
Docker镜像就是一个只读的模板。镜像可以用来创建Docker容器,一个镜像可以创建很多容器。镜像就好比是Java中的类,是一个模板。
容器(Container)
容器是用镜像创建的运行实例,就好比是Java中使用 类创建的一个个对象。
可以把容器看做是一个简易版的Linux环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。容器的定义和镜像几乎一模一样。
仓库
仓库(Repository)是 集中存放镜像文件的场所。
仓库(Repository)和仓库注册服务器(Registry)是有区别的。仓库注册服务器上往往存放着多个 仓库,每个仓库又包含了多个镜像,每个镜像有不同的标签(tag)。
仓库分为公开仓库(public)和私有仓库(private)两种形式。
指令
run
以上是关于Docker —— 什么是Doker的主要内容,如果未能解决你的问题,请参考以下文章