欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > Docker

Docker

2025/5/22 16:36:13 来源:https://blog.csdn.net/JK01WYX/article/details/147816809  浏览:    关键词:Docker

在这里插入图片描述

Docker 是一个开源的容器化平台,它可以把应用程序及其依赖项打包在一个轻量级、可移植的容器中运行,从而实现跨环境一致性部署

典型应用场景:

  • 微服务架构部署(如使用 Docker Compose)
  • 持续集成/持续部署(CI/CD)
  • 测试环境快速搭建
  • 多版本软件运行(如不同版本的数据库或编译环境)

文章目录

      • 原理
      • 核心概念
      • 优势
      • 常用命令示例

原理

Docker 是目前非常流行的容器技术,本质上是对 Linux 内核能力的一种封装,比如命名空间(Namespace)、控制组(Cgroups)、联合文件系统(UnionFS)等。

Docker 容器是运行在宿主 Linux 内核上的隔离进程,它模拟了一个“尽可能接近但受限的 Linux 用户空间”。他并没有像虚拟机里的操作系统如 ubuntu 一样去虚拟化模拟独立内核,只是文件系统和环境变量像 CentOS。

组件作用
Docker Client用户接口,接收命令如 docker run
Docker Daemon后台守护进程,负责创建、管理容器等
Docker Image容器的只读模板,基于层构建
Docker Container运行时实体,基于镜像 + 文件系统

(‘外驱’,‘内驱’,‘驱动对象’,‘存储驱动产物’)

Docker 利用 Linux 的 Namespace、Cgroups、UnionFS 实现进程级的隔离和资源控制,使得多个容器共享内核、快速启动、轻量运行。

  • Namespace(命名空间)— 提供隔离
    如容器有自己的网络栈,PID空间
  • Cgroups(控制组)— 控制资源
    限制和统计容器使用的系统资源,如 CPU、内存、磁盘、网络 等。
  • UnionFS(联合文件系统)— 构建镜像
    镜像是只读的,运行时会有“可写层”来存储产生的数据。

核心概念

镜像(Image)
类似于操作系统的“安装包”,是一个只读模板,包含运行容器所需的全部内容(代码、库、依赖等)。可以从 Docker Hub 等仓库拉取。

容器(Container)
镜像运行后的实例,是一个隔离的运行环境。容器之间互不影响,常用于部署微服务、测试等。

Dockerfile
构建镜像的脚本文件,定义了镜像构建过程中的各个步骤。

仓库(Registry)
用于存储和分发镜像,如官方的 Docker Hub。

优势

轻量级:相比虚拟机,Docker 容器共享宿主内核,启动快,占用资源少。

可移植性:在任何支持 Docker 的环境下运行相同的容器,避免“在我电脑上没问题”的问题。

一致性:开发、测试、生产环境保持一致,提高部署稳定性。

隔离性:每个容器运行在独立环境中,不会互相干扰。

自动化构建与部署:结合 CI/CD 工具,可以实现自动构建和持续部署。

常用命令示例

# 拉取镜像
docker pull ubuntu# 运行一个容器
docker run -it ubuntu /bin/bash# 查看正在运行的容器
docker ps# 构建镜像
docker build -t myapp .# 停止并删除容器
docker stop 容器ID && docker rm 容器ID

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词