• 初识Docker


    1 Docker出现的背景

    • 在实际开发过程中,会出现很多环境:开发环境、测试环境以及生产环境。

    Docker出现的背景

    • 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验。
    • Docker之所以如此迅速,也是因为它对此给出了一个标准化的解决方案。
    • 环境配置如此麻烦,换一台机器,就要重来一次,费时费力。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。开发人员利用Docker可以消除协作编码时“在我的机器上可以正常运行”的问题。
    • 之前在服务器配置一个应用的运行环境,需要安装各种软件,比如JavaEE项目,至少需要安装JDK、MySQL、Maven、Tomcat等,安装和配置这些东西有多麻烦不说,关键是其不能跨平台。比如我们在Windows上安装的这些环境,到了Linux又得重新安装。况且就算不跨操作系统,换另一台同样操作系统的服务器,要移植应用也是非常麻烦的。
    • 传统上认为,软件编码开发/测试结束后,所产出的成果即程序或是能够编译执行的二进制字节码等(以java为例)。而为了让这些程序可以顺利执行,开发团队也得准备完整的部署文件,让运维团队得以部署应用程序,开发需要清楚的告诉运维部署团队,用的全部配置文件+所有软件环境。不过,即便如此,仍然常常发生部署失败的情况。Docker镜像的设计,使得Docker得以打破过去“程序即应用”的观念。通过镜像将作业系统核心除外,运行应用程序所需要的系统环境,由下而上打包,达到应用程序跨平台间的无缝接轨运作。

    Docker是解决了运行环境和配置问题的软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。

    2 Docker的概念

    • Docker是一个开源的应用容器引擎。
    • 诞生于2013年初,基于Go语言实现,dotCloud公司出品(后改名为Docker Inc)。
    • Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上。
    • 容器是完全使用沙箱机制,相互隔离。
    • 容器性能开销极低。
    • Docker从17.03版本之后分为CE版(社区版)和EE版(企业版)。

    Docker的Logo

  • 相关阅读:
    Android开发 ViewConfiguration View的配置信息类
    Android 开发 倒计时功能 转载
    Android 开发 关于7.0 FileUriExposedException异常 详解
    Android 开发 实现文本搜索功能
    Android 开发 Activity里获取View的宽度和高度 转载
    Android 开发 存储目录的详解
    Android 开发 Fresco框架点击小图显示全屏大图实现 ZoomableDraweeView
    Android 开发 将window变暗
    Android 开发 DisplayMetrics获取Android设备的屏幕高宽与其他信息
    Android 开发 DP、PX、SP转换详解
  • 原文地址:https://www.cnblogs.com/xuweiweiwoaini/p/13660321.html
Copyright © 2020-2023  润新知