个人随笔
目录
Docker生态架构及部署实战笔记
2026-06-27 17:54:45
Docker是当下主流的容器管理工具,凭借轻量化、可移植、高一致性的特点,广泛应用于应用打包、部署、运维等场景。本文将完整梳理Docker核心生态架构,并详细讲解两种主流的Docker-ce部署方式,适配CentOS系统,适合新手学习与实操留存。

一、Docker 核心生态架构

Docker生态是一套完整的容器运行体系,由主机、守护进程、客户端、镜像、容器、镜像仓库等核心组件构成,各组件协同工作,实现容器的全生命周期管理。

1.1 核心组件详解

1. Docker Host(Docker主机)

部署安装Docker守护进程(daemon)的服务器/主机,是所有容器、镜像运行的基础载体。所有容器均运行在Docker Host之上,依托主机资源完成应用运行。

2. Docker daemon(Docker守护进程)

Docker的核心后台服务,常驻于系统后台,主要负责管理本机的容器、镜像、网络、存储等核心资源。底层基于 Containerd.io 实现容器的创建、启动、停止、销毁等核心管控操作,是Docker体系的核心调度中枢。

3. Registry(镜像仓库)

专门用于存储Docker镜像的仓库服务,镜像作为容器运行的模板,可通过仓库实现共享、下载、复用。用户可直接从仓库拉取现成镜像,快速启动容器运行应用。
常见仓库类型
  • 公共仓库:Docker Hub(官方公共镜像仓库)
  • 私有仓库:Harbor(企业内部私有镜像仓库,保障镜像安全、私有化部署)

4. Docker client(Docker客户端)

用户操作Docker的交互工具,是连接用户与Docker daemon的桥梁。用户通过输入docker命令,由客户端转发指令给守护进程执行。该客户端可部署在Docker本机,也可部署在其他可网络连通的主机,远程操作Docker服务。

5. Image(容器镜像)

打包了应用程序、运行环境、依赖库、系统配置的只读模板文件,具备不可变性。镜像是启动容器的唯一依据,一个镜像可以批量启动多个独立容器,实现应用环境一致性部署。

6. Container(容器)

由镜像实例化生成的可读写运行环境,是应用程序的实际运行载体。容器继承镜像的所有基础文件,同时支持运行过程中新增、修改文件,拥有独立的运行空间、网络、进程资源,相互隔离互不干扰。

7. Docker Dashboard

Docker可视化管理界面,仅支持Mac、Windows系统,Linux系统无此功能。无需输入命令行,可通过图形界面直观管理本机镜像、容器、应用,简化Docker日常运维操作。

1.2 Docker版本区分

Docker主要分为社区版与企业版,适配不同使用场景:
  • Docker-ce(社区版):免费开源,面向个人开发者、测试环境,日常学习、开发测试优先使用。
  • Docker-ee(企业版):商业收费版本,面向企业生产环境,提供官方技术支持、安全加固、企业级运维能力;2020年曾因国际政策原因,短暂限制国内企业使用,支持1个月免费试用。

二、Docker-ce 部署实战(CentOS)

本文统一部署Docker社区版(Docker-ce),提供YUM源部署、二进制部署两种方式,其中YUM源为生产推荐方式。
注意:官方境外文档及二进制下载链接当前无法访问,实操优先使用阿里云镜像YUM源部署。

2.1 YUM源部署(推荐)

YUM源部署支持自动安装依赖、便捷升级、稳定维护,是企业生产环境首选。可选用官方源、清华镜像源、阿里云镜像源,优先推荐阿里云镜像源,国内访问速度快、稳定性高。

2.1.1 下载阿里云Docker YUM源文件

在Docker主机执行wget命令,将阿里云官方Docker源文件下载到系统YUM源配置目录:
# 下载阿里云Docker-ce YUM源
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2.1.2 安装Docker-ce

通过yum命令一键安装稳定版Docker-ce,系统会自动适配安装Docker daemon、客户端及所有依赖组件:
# 一键安装Docker社区版
yum -y install docker-ce

2.1.3 配置Docker守护进程服务文件

Docker默认配置会影响CentOS系统Iptables防火墙FORWARD链规则,同时为支持自定义daemon.json配置文件,需修改系统服务配置:
# 编辑Docker系统服务配置文件
vim /usr/lib/systemd/system/docker.service
根据实际运维需求修改对应参数,保存退出即可。

2.1.4 启动服务并验证安装

重载系统服务配置、启动Docker并设置开机自启,最后查看版本验证安装成功:
# 重载系统daemon配置
systemctl daemon-reload

# 启动Docker服务
systemctl start docker

# 设置开机自启动
systemctl enable docker

# 查看Docker版本,验证安装
docker version
安装成功版本信息示例:本次安装版本为20.10.12,包含客户端、服务端、containerd、runc等完整组件,组件版本匹配、运行正常。

2.2 二进制文件部署(备用方式)

该方式为离线手动部署方案,官方不推荐生产使用,核心缺点为无法自动更新、后续升级维护繁琐,仅适用于网络受限、无法使用YUM源的特殊场景。
注意:官方二进制下载境外链接无法正常访问,可通过国内镜像站获取对应安装包。

2.2.1 下载二进制安装包

# 下载Docker20.10.9二进制压缩包
wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz

2.2.2 解压并部署二进制文件

# 解压安装包
tar xf docker-20.10.9.tgz

# 将解压后的所有核心二进制文件拷贝到系统可执行目录
cp docker/* /usr/bin/
解压后包含dockerd、docker、runc、containerd等核心运行文件,覆盖系统目录后即可调用。

2.2.3 启动Docker守护进程

# 后台启动Docker守护进程
dockerd 
启动后会输出大量日志信息,回车即可退出日志界面,正常使用Docker命令。如需自定义配置,可编辑/etc/docker/daemon.json 文件添加个性化参数。

2.2.4 验证部署结果

# 查看Docker命令路径
which docker

# 查看二进制部署的Docker版本
docker version
部署成功后可正常显示客户端、服务端及配套组件版本,代表二进制部署完成。

三、部署方式总结

  1. YUM源部署:推荐首选,操作简单、自动维护依赖、支持在线升级、稳定性高,适配绝大多数生产、测试场景。
  2. 二进制部署:仅作为离线备用方案,无自动更新机制,后期运维成本高,不建议长期使用。
国内环境实操建议:全程使用阿里云镜像源,规避境外链接访问失败问题,提升部署成功率与运行稳定性。
 5

啊!这个可能是世界上最丑的留言输入框功能~


当然,也是最丑的留言列表

有疑问发邮件到 : suibibk@qq.com 侵权立删
Copyright : 个人随笔   备案号 : 粤ICP备18099399号-2