当前位置: 首页 > news >正文

Docker之路(1.Docker概述、组成以及特点)

1.docker为什么会出现?

  • 一款产品或者项目来说,一般有三个环境,日常/测试环境、预发环境、正式/线上环境
    这么多环境,对其环境的配置是十分麻烦的,每一个机器都要部署环境,有的会有集群Redis、Hadoop等,
    容易出错、并且可能配置错了后,要冲头再来,是很费时费力的。

  • 举例:我们现在要发布一个项目,这个项目依赖的环境,比如说,python、redis、Mysql等等,
    会配置部署起来很麻烦,而且很多的东西是不能够跨平台的,如果说我们发布,就我们的项目以及环境整体搞成一个整体发布的话,而不是环境中的所需要的一个一个去
    配置安装,这样就是项目+环境的一个整体打包发布!

  • 这样是否可以实现?
    可以实现,docker就是来干这个事的

  • 有了docker之后,
    传统的流程:开发、打包项目、后续交给运维
    现在的流程:开发、打包项目环境整体,部署上线,一整套流程!

2.docker核心思想

  • docker核心思想就是隔离,用docker图标的含义来说就是,打包装箱,每个箱子都是互相隔离的。
  • 可以理解为,每个箱子都是不同的东西,但是都可以同时放在一个船上
  • docker 通过隔离的机制,可以将服务器利用到极致

3.docker的一些知识点

  • docker 十分的轻巧
  • docker 是基于Go语言开发的,并且是开源的
  • docker官网:https://www.docker.com/
  • docker官方文档:https://docs.docker.com/ 官方的就很详细了

4.docker能做什么

4.1 之前的虚拟机技术的缺点

  • 资源占用十分多
  • 冗余步骤多
  • 启动很慢

4.2 现在的容器化技术

容器化技术不是模拟的一个完整的操作系统
Docker是内核级别的虚拟机,可以在一个物理机上可以运行很多的容器实例!

  • 应用更快速的交付和部署
  • 更便捷的升级和扩容
  • 更简单的系统运维
  • 更高效的计算资源利用

4.3 比较Docker 和虚拟机技术的不同

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

5. Docker的基本组成

5.1 Docker 架构图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8mpp9BRG-1676962810624)(img.png)]

  • 镜像(image): docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,通过这个镜像可以创建多个
    容器(最终服务运行或者项目运行就是在这个容器中的)
  • 容器(container): docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建。
    目前就可以把这个容器理解为就是一个简易的Linux系统
  • 仓库(repository):
    仓库就是放镜像的地方!
    仓库分为公有仓库和私有仓库!
    Docker Hub(默认是国外的),阿里的,华为的也有仓库。
http://www.lryc.cn/news/14962.html

相关文章:

  • 非对称加密算法在android的应用
  • 51单片机——定时器中断实验,小白讲解,相互学习
  • 什么是循环依赖,spring是如何去解决循环依赖问题的?什么是三级缓存?【spring】
  • Cron表达式
  • JavaScript 作用域
  • Hive内部表与外部表的区别具体说明
  • Java流程控制
  • I.MX6ULL_Linux_系统篇(17) uboot分析-启动linux
  • C/C++每日一练(20230221)
  • 用Python采集热门城市景点数据并简单制作数据可视化图
  • 论文阅读:pixelNeRF: Neural Radiance Fields from One or Few Images
  • C++项目——高并发内存池(1)--介绍及定长内存池
  • 网络有线无线配置
  • 阅读笔记——Feature-Point Matching for Aerial and Ground Images方法
  • 前端工程师面试题10条必会笔试题
  • 【技术分享】Web自动化之Selenium安装
  • 【Linux】进程状态的理解
  • 打游戏哪种蓝牙耳机比较好?适合玩游戏的无线蓝牙耳机
  • Fortinet推出新一代自研安全芯片,跨所有网络边缘加速网络与安全融合
  • ChatGPT爆火背后的真相:学编程已经成为必选项
  • Unity UI框架
  • vue2提取vue-router的title单独存放,使用i18n实现
  • 【Linux操作系统】【综合实验三 用户帐号、文件系统与系统安全管理】
  • sqlite3数据库-sqlite语句1(五)
  • 【图像分类】卷积神经网络之LeNet5网络模型实现MNIST手写数字识别
  • 前端开发环境搭建
  • 学习Flask之四、网页表单
  • CenterMask paper笔记
  • 06- OpenCV查找图像轮廓 (OpenCV基础) (机器视觉)
  • OpenGL学习日记之模型绘制