概述:为了解决重复部署环境配置出现的问题,带上环境打包 ,基于Go语言开发的;

java — apk —发布(应用商店) -xx使用 — 安装可用
java — jar(环境) —打包项目带上环境 (镜像) — (仓库) — 下载发布的镜像 —直接运行
image.png**
思想来自集装箱;

  • 镜像和隔离机制,

    Docker文档

    http://docs.docker.com/

    Docker历史

    开源项目

    Docker容器化技术

    容器化技术—docker
    为什么火?

  • 十分轻巧 相较于虚拟机技术

虚拟机:
image.png
虚拟机十分笨重,
相当于一台子电脑
Docker:
image.png
容器技术,也是一种虚拟技术
镜像:最核心的环境-十分轻巧;秒级启动
虚拟机和Docker异同:

  • 传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个·系统上安装和运行软件
  • 容器内的应用直接运行在宿主机上的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,也不虚拟硬件了,所以十分轻便;
  • 每个容器都是互相隔离的,每个容器内都有一个属于自己的文件系统,沙箱隔离,互不影响;

DevOps(开发,运维)

应用更快速的交付和部署:

传统:一堆帮助文档,安装程序
Docker:打包镜像发布测试,一键运行

更间接的升级和扩缩容:

使用Docker之后,我们部署应用就和搭积木一样了
项目打包为一个镜像,扩展,服务器A,服务器B

更简单的系统运维:

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

更高效的计算资源利用:

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

Docker的基本组成

image.png

镜像(image):

  • Docker镜像就相当于一个模板,可以通过这个模板创建爱你容器服务,tomcat镜像 ==>run==>tomcat01容器(提供服务器),
  • 通过这个镜像可以创建多个容器(最终服务运行或者项目运行在这个容器中)

    容器(container):

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

  • 启动,停止,删除的基本命令!
  • 目前就可以吧这个容器理解为一个建议的linux系统

    仓库(repoter):

  • 远程仓库和本地仓库

  • 远程仓库 阿里云,华为云