Docker入门第一章

Docker为何出现? 


一款产品:开发到上线 两套环境!应用环境,应用配置!java

可能在开发环境你的产品是正常的,可是到了线上环境你的产品可能就会出现各类缘由,或许是由于环境的不一样,也多是由于配置的不一样等等各类缘由致使服务的不可用!对于运维来讲,考验就很是大。sql

环境配置是十分的麻烦,每个机器都要部署环境(集群Redis、ES、Hadoop等等)!费时费力。docker

如今你须要发布一个项目(jar包 +(环境 Redis、Mysql、JDK、ES)),项目须要带上环境安装打包!此时Docker就能够帮你解决。服务器

至关于Docker帮你将jar包和环境打包到一块儿部署上线,一套流程作完!运维

举个抽象的例子你用Java开发的apk应用(应用商店)而后吕世昊使用apk安装便可使用,而Docker是你用java开发一个jar,而后依赖一些环境如Mysql等等,而你只须要将这个jar和环境打包成一个镜像文件而后发布Docker仓库中(商店),吕世昊就能够下载你发布的Docker镜像,一键运行就ok了。oop

Docker简介


Docker是基于Go语言开发的!开源项目!测试

Docker的官网:https://www.docker.comui

Docker的文档地址:https://docs.docker.com/   (Docker的文档是超级详细的)阿里云

Docker的下载:(进入Docker文档页面就有下载的入口)操作系统

Docker的仓库地址:https://hub.docker.com/

Docker和虚拟机的不一样


传统虚拟机,虚拟出一条硬件,运行一个完整的操做系统,而后在这个系统上安装和运行软件

Docker容器内的应用直接运行在宿主机的内容,Docker容器是没有本身的内核的,也没有虚拟咱们的硬件,因此就轻便了

每一个Docker容器间是互相隔离,每一个Docker容器内都有一个属于本身的文件系统,互不影响。

Docker的好处


应用更快速的交付和部署

          传统:给你一大堆帮助文档,安装程序。

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

更便捷的升级和扩缩容

          使用了Docker以后,咱们部署应用就和搭积木同样!

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

更简单的系统运维

           在容器化以后,咱们的开发,测试环境都是高度一致的。

更高效的计算资源利用:

           Docker是内核级别的虚拟化,在一个物理机上能够运行不少容器实例。

Docker的基本组成


  • Client:客户端
  • DOCKER_HOST:Docker的服务
  • Registry:远程仓库
  • docker build:构建一个容器
  • docker pull:拉取一个容器
  • docker run:运行一个容器
  • Docker daemon:Docker的守护进程
  • Images:镜像(能够理解为Class类)(镜像就比如是一个模板,能够经过模板建立容器实例或者说容器服务,一个镜像能够建立多个实例)
  • Containers:多个容器(能够理解为类实例出来的对象)(能够对容器进行启动,中止,删除等基本命令)
  • Registry:远程仓库(存放镜像的地方,仓库分为公有仓库和私有仓库)(Docker Hub是国外的共有仓库地址,能够配置镜像加速使用国内阿里云的仓库)
相关文章
相关标签/搜索