【大白学Docker】一文做到Docker基础知识整理

Docker基础知识整理单

注:整理Docker基础的概念、原理、常用命令和常见问题和解决方法,作为备忘,也方便广大学生学习参考。

一、什么是Docker

Docker是一种开源的容器化平台,允许开发者将应用程序及其所有依赖项打包到一个标准化的单元中,称为容器。这个容器可以在任何支持Docker的环境中运行,提供了一种轻量级、可移植、自给自足的解决方案。

小结一下:一次配置,处处运行,开箱即用!

二、为什么需要Docker

一致的运行环境:

  • Docker可以确保应用程序在开发、测试和生产环境中具有一致的运行环境,消除了“在我的机器上可以运行,而在你的机器上却不行……”的问题。

轻量级的虚拟化:

  • Docker容器与传统虚拟机相比更轻量,更快速启动,占用更少的系统资源,提高了系统的利用率。

快速部署与扩展:

  • Docker容器可以在几秒钟内启动,比传统的虚拟机更为迅速。同时,容器可以轻松水平扩展,适应不同的负载需求。

环境隔离与安全性:

  • Docker利用容器技术提供了良好的隔离性,确保应用程序互不影响。每个容器都运行在其独立的命名空间中,降低了安全风险。

简化配置与持续集成:

  • Docker通过Dockerfile提供了简单而强大的配置方式,使得应用的部署变得更为简便。与持续集成工具(如Jenkins)结合,可以实现自动化的构建与部署流程。

更高的资源利用率:

  • 由于容器共享主机内核,避免了虚拟机的资源浪费,提高了系统资源的利用率。

三、Docker与VM虚拟机的对比

在这里插入图片描述

上图显示Docker与VM架构的上的不同。

下表做一些对比归纳:

VM DOCKER
底层引擎 Hpyervisor Docker引擎
封装类型 包含操作系统OS 包含程序运行的环境(类、库)
存储大小 大(一般以GB为单位) 小(一般以MB为单位)
启动速度 慢(跟操作系统启动一样)
可集成性 比较独立,难集成! 容易搭配其他Docker一起部署服务

是不是一目了然?

四、Docker的特点与核心概念

Docker技术特性

  1. 进程隔离
    • 定义: 进程隔离是容器化技术的核心概念之一,它确保一个容器内的进程不会影响到其他容器或主机系统。每个容器都有自己独立的进程空间,运行在隔离的用户空间。
    • 优势: 提高安全性,确保容器内的应用程序不会干扰其他容器或主机上运行的进程。
  2. 文件系统隔离
    • 定义: 文件系统隔离确保每个容器都有自己独立的文件系统,不受其他容器的影响。容器内的文件系统是轻量的,包含应用程序及其依赖项。
    • 优势: 确保容器内的应用程序能够以自己的方式组织和管理文件,不会相互干扰。
  3. 网络隔离
    • 定义: 网络隔离确保每个容器都有独立的网络命名空间,拥有自己的网络接口、IP地址和端口。这使得容器可以独立运行,并在网络上互不干扰。
    • 优势: 提供了更灵活的网络配置选项,容器之间的通信不会直接影响到其他容器。
  4. 资源隔离
    • 定义: 资源隔离是确保容器在使用系统资源(如CPU、内存)时不会影响其他容器或主机的关键方面。通过资源限制和分配,每个容器都获得了一定的资源份额。
    • 优势: 提高系统的稳定性和可靠性,防止容器之间的资源争夺导致性能下降。

Docker的核心概念

  1. 镜像(Images)
    • 定义: 镜像是Docker的基本构建块,它包含了运行应用程序所需的一切,包括代码、运行时、系统工具、库以及设置。镜像是只读的,是静态存档
    • 作用: 镜像是容器的基础,通过镜像可以创建运行相同环境的容器实例。
    • 操作: 镜像可以从仓库拉取,也可以通过Dockerfile构建。
  2. 容器(Containers)
    • 定义: 容器是由镜像创建的运行实例,是一个轻量级、独立、可执行的软件包,包含运行一个应用程序所需的所有内容,可以说是动态运行的。
    • 作用: 容器提供了一种隔离的执行环境,使应用程序在不同的环境中具有一致的运行表现。
    • 操作: 容器可以启动、停止、删除,也可以与外部系统进行交互。
  3. 仓库(Registry)
    • 定义: 仓库是用于存储和组织镜像的地方,可以是公共的,也可以是私有的。Docker Hub是一个常用的公共仓库,而私有仓库则可以
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值