Salmon的全栈知识 Salmon的全栈知识
首页
  • JavaSE
  • JavaWeb
  • Spring生态
  • JUC
  • JVM
  • Netty
  • Java各版本特性
  • 23种设计模式
  • Maven
  • Java常用框架
  • Dubbo
  • OpenFeign
  • Nacos
  • Zookeeper
  • Sentinel
  • Seata
  • SpringCloud Gateway
  • Apollo
  • Eureka
  • Go基础
  • Gin
  • SQL数据库

    • MySQL
    • Oracle
  • NoSQL数据库

    • Redis
    • MongoDB
    • ElasticSearch
  • 消息中间件

    • RabbitMQ
    • RocketMQ
    • Kafka
    • ActiveMQ
    • MQTT
    • NATS
  • 网关中间件

    • Nginx
  • Linux
  • Docker
  • Git
  • K8s
  • Solidity
  • Java
  • 计算机网络
  • 操作系统
GitHub (opens new window)
首页
  • JavaSE
  • JavaWeb
  • Spring生态
  • JUC
  • JVM
  • Netty
  • Java各版本特性
  • 23种设计模式
  • Maven
  • Java常用框架
  • Dubbo
  • OpenFeign
  • Nacos
  • Zookeeper
  • Sentinel
  • Seata
  • SpringCloud Gateway
  • Apollo
  • Eureka
  • Go基础
  • Gin
  • SQL数据库

    • MySQL
    • Oracle
  • NoSQL数据库

    • Redis
    • MongoDB
    • ElasticSearch
  • 消息中间件

    • RabbitMQ
    • RocketMQ
    • Kafka
    • ActiveMQ
    • MQTT
    • NATS
  • 网关中间件

    • Nginx
  • Linux
  • Docker
  • Git
  • K8s
  • Solidity
  • Java
  • 计算机网络
  • 操作系统
GitHub (opens new window)
npm

(进入注册为作者充电)

  • 什么是容器
  • 什么是Docker
  • 快速入门
  • Docker基础
  • 项目部署
  • 《Docker》笔记
Salmon
2024-05-14

什么是容器

容器是一种虚拟化技术,用于在操作系统级别隔离应用程序及其依赖环境的运行环境。与传统的虚拟机相比,容器更加轻量级、快速和灵活。

容器包含了应用程序及其所有依赖项,如代码、运行时环境、系统工具、系统库等,以及所需的配置文件。容器将这些组件打包到一个独立的单元中,并与宿主操作系统共享内核,从而实现了资源的高效利用和快速部署。

容器技术的主要特点包括:

  1. 轻量级: 由于容器与宿主操作系统共享内核,因此它们不需要额外的操作系统镜像,使得容器比传统虚拟机更加轻量级。
  2. 快速启动: 容器可以在几秒钟内启动,因为它们不需要像虚拟机那样启动整个操作系统,而是直接在宿主操作系统上启动应用程序。
  3. 隔离性: 每个容器都运行在独立的环境中,与其他容器和宿主系统隔离开来,从而确保了应用程序之间的互相独立和安全性。
  4. 可移植性: 容器提供了一种标准化的打包和交付机制,使得应用程序可以在任何支持容器的平台上以相同的方式运行,无需担心环境差异。
  5. 可扩展性: 容器可以根据需要进行水平或垂直扩展,以满足应用程序的需求,而且扩展过程通常非常快速和灵活。

容器架构是指容器技术所涉及的组件和系统结构,用于管理、运行和部署容器化应用程序。 image.png 典型的容器架构包括以下组件:

  1. 宿主机(Host Machine): 宿主机是运行容器的物理或虚拟计算机。它可以是云服务器、物理服务器或者虚拟机实例。宿主机上安装了容器运行时(如 Docker Engine),负责管理容器的生命周期。
  2. 容器引擎(Container Engine): 容器引擎是一个用于创建、运行和管理容器的软件。最流行的容器引擎是 Docker,但也有其他选择,如 Containerd、CRI-O 等。容器引擎负责与宿主机的操作系统内核交互,以便在其中创建和管理容器。
  3. 镜像(Image): 镜像是容器运行时的静态文件,包含了应用程序的代码、运行时环境、系统工具和依赖项。镜像是容器的基础,用于创建容器实例。Docker 镜像通常由 Dockerfile 构建而成,可以通过 Docker Hub 或私有镜像仓库分享和分发。
  4. 容器(Container): 容器是运行在宿主机上的一个或多个镜像的实例。每个容器都是一个独立的运行环境,包含了应用程序及其所有依赖项,以及所需的配置文件。容器之间是相互隔离的,但可以与宿主机共享资源和网络。
  5. 容器编排(Container Orchestration): 容器编排是一种自动化和管理容器化应用程序的方法。它涉及到部署、扩展、管理和调度容器的过程,以确保应用程序的高可用性、负载均衡和弹性。常见的容器编排工具包括 Kubernetes、Docker Swarm 等。
  6. 容器注册中心(Container Registry): 容器注册中心是用于存储、管理和分发容器镜像的中心化服务。它允许开发人员和运维团队共享和获取镜像,以便在不同的环境中部署应用程序。常见的容器注册中心包括 Docker Hub、Harbor、Quay 等。

容器技术的代表性实现包括 Docker、Kubernetes、Podman 等。这些工具使得容器的创建、管理和部署变得更加简单和高效,广泛应用于软件开发、测试、部署和运维等领域。

上次更新: 2025/07/23, 01:37:33
什么是Docker

什么是Docker→

Theme by Vdoing | Copyright © 2022-2025 Salmon's Blog
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式