【Docker】入门1_从0开始Docker_Docker是什么

Docker系列文章目录


前言

为什么要使用Docker呢?

相信大家在大学编程中应该学过C语言,C++语言,Java语言来进行编程。
在编程过程中,C\C++语言需要g++来进行编译,Java则需要JDK来编译,并使用JRE来运行。有时候程序在自己电脑上运行成功,但室友copy过去之后就报错;实验室运行成功,但是拷贝到本机就不行;网络上的代码片段拷贝下来,在本机编译过了但也无法运行;

为了解决由于机器环境不同,机器资源不同而导致程序运行出现差异的问题,Docker就应运而生。


Docker是什么

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。简言之,就是可以在Linux上镜像使用的这么一个容器。

Docker解决的问题

  1. 环境不一致,导致水土不服;
    开发的时候jdk使用1.8,测试服务器的jdk版本1.7

  2. 多用户的操作系统相互不能隔离,会相互影响;
    一台服务器如果部署多个应用程序,当某个程序运行除了问题牵连其他的服务.

  3. 当做活动需要快速搭建服务集群时,传统方式效率低;

  4. 安装redis、nginx等开源服务太繁琐;

Docker思想

  1. 集装箱
    将你的应用程序打包成一个集装箱(jdk1.8+wfx-search、nginx+gcc+依赖库),谁需要这个应用直接把整个箱子拿过去即可
  2. 标准化
    运输的标准化、命令的标准化
  3. 隔离性
    docker基于linux内核单独开辟一块空间,来部署运行应用服务

Docker架构图
Docker架构图

相关概念

Docker 包括三个基本概念:

  1. 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
  2. 镜像(Image):Docker 镜像,就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  3. 容器(Container):镜像和容器的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的

定义:容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。
Docker 容器通过 Docker 镜像来创建。
容器与镜像的关系类似于面向对象编程中的对象与类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦鸢MoYuan

谢谢投喂!!!QWQ!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值