Docker 理论入门

环境配置与部署

    软件部署最大的麻烦之一,就是环境配置的不方便。一个独立的软件由于开发和运行所依赖的环境不一致,部署时可能会浪费很多没必要的功夫。想要从根本上解决问题,最简单粗暴的方法就是把软件与依赖的环境整个打包,复制到运行环境上。Docker 就是这样的一个解决方案。

Docker

    Docker 将应用程序与该程序的所有依赖,都打包在一个文件里。运行这个文件,就能生成一个虚拟容器,程序便可以在其中运行,有了 Docker ,就不必再担心环境问题!

Docker 的用途

  1. 提供一次性的环境。比如,本地运行/测试别人的应用,持续集成的时候提供单元测试和构建的环境。
  2. 提供弹性的云服务。随开随关的特性,很适合云服务的动态扩容和缩容。
  3. 组建微服务架构。多个容器模拟多个服务器,在一台机器上就可以跑多个服务,模拟微服务架构的实施。

容器与镜像

    Docker 基于两个十分重要的概念—— image 和 container。image 和 container 可以类比成面向对象中的类和对象,container 就是 image 运行起来的实例化。

    为了管理镜像,还需要镜像仓库。仓库是集中存放镜像的地方,Docker 官方维护了公共仓库——Docker Hub,类似于 Github 之于版本控制的文件。

Dockerfile

    Dockerfile 是一个用来构建镜像的文本文件,文本内容包含一条条构建镜像所需的指令和说明。

对比虚拟机

虚拟机同样也是容器化的一个方案,但实现方式上的大不同导致两者有着很大的区别

在这里插入图片描述

对比可以看到,

虚拟机Docker 容器
硬件级进程隔离OS级进程隔离
一个VM带一个OS容器可共享OS
分钟级启动秒级启动
GB级大小轻量级容器(KBs/MBs)
现成的VM不好找预构建的容器容易获取
移植性更好容器会被摧毁和重建而不是移植
构建时间相对更久秒级构建
需要使用更多资源更少的资源使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值